potrzebuję coś do konwersji między AnsiString a std::string, w obie strony. Nie może być użyte c_str() z racji tego, że stringi będą przechowywały dane binarne i konwersja mogłaby się urwać na jakimś \0.
W drugą stronę też może zadziałać.
stringi będą przechowywały dane binarne
coś jest bardzo nie tak z założeniami...
nowator, bez komentarza.
Azarien, funkcja get() w HTTPClientSocket z INDY zwraca AnsiString. To co ja mam poradzić że chcę ściągnąć akurat plik binarny?
to przy konwersji do stl powinieneś użyć std::vector.
olo16 napisał(a)
Azarien, funkcja get() w HTTPClientSocket z INDY zwraca AnsiString.
A czy przypadkiem ta metoda nie ma wersji ze strumieniem w parametrze?
Może ma, przyjrzę się temu bardziej. Ale trafiłem na sporą przeszkodę - pliki mogą być duże, a ja raczej nie wyobrażam sobie kilkudziesięcio megabajtowego obiektu w pamięci... :/
Jest jakiś inny sposób ściąganie plików przez INDY?
Znowu: patrz wersja ze strumieniem ;-)
Z jakim strumieniem? Niezbyt dobrze znam INDY.
Ja też :> Nie korzystam z BCB, a moja wiedza o INDY pochodzi z for i dokumentacji. Jeśli chodzi o strumień, to jest to TIdStream, który jest aliasem TStream, a więc w Twoim przypadku będzie to strumień TFileStream.
Mam nadzieję, że do reszty dojdziesz sam...
Znalazłem już coś o tym: http://www.elektroda.pl/rtvforum/topic237482.html
Dzięki za odpowiedzi.