[Gambas-user] Using a socket to download an image. Please Help ^_^
Robert Moss
the.at.robert at ...626...
Sun Nov 30 20:50:06 CET 2008
The ImgData stops writing when it comes to a byte with value &H00 (I
believe) although I'm pretty sure it doesn't matter how I write the stream,
once it's read as a String, it becomes terminated by any NULL char. So my
question is this: How do I read the data from the Socket in binary, write it
to a stream file in binary, but STILL I MUST be able to split the data based
on the 2 CRLF's
On Sun, Nov 30, 2008 at 11:48 AM, Robert Moss <the.at.robert at ...626...>wrote:
> Sorry that's not it, I mis-copied the line, in the actual code it does
> Mid(sData, p1 + 4)
>
> On Sun, Nov 30, 2008 at 2:39 AM, Doriano Blengino <
> doriano.blengino at ...1909...> wrote:
>
>> Robert Moss ha scritto:
>> > I am trying to get an image (or any binary data) downloaded from a
>> website
>> > and into a jpg file. I expect I will need to use the Byte[] datatype,
>> but I
>> > absolutely can NOT use Callbacks when the data comes in this time.
>> >
>> > ...
>> >
>> > DO UNTIL(EOF(#Sock))
>> > READ #Sock, sBuf, Lof(Sock)
>> > sTotal &= sBuf
>> > LOOP
>> >
>> > CLOSE #Sock
>> >
>> >
>> > p1 = InStr(sTotal, "\r\n\r\n")
>> >
>> > ImgData = Mid(sTotal, p1)
>> >
>> > OPEN "localimg.jpg" FOR OUTPUT CREATE AS #myFile
>> > WRITE #myFile, ImgData, Len(ImgData)
>> > CLOSE #myFile
>> >
>> I think there is a problem with InStr(...,"\r\n\r\n").
>> By taking mid$(...,p1), you retain the two CRLFs, which are not good at
>> the beginning of a jpeg file.
>> You should get rid of the first 4 characters. May be there are still
>> other problems, but this is one for sure.
>>
>> Regards,
>>
>> --
>> Doriano Blengino
>>
>> "Listen twice before you speak.
>> This is why we have two ears, but only one mouth."
>>
>>
>> -------------------------------------------------------------------------
>> This SF.Net email is sponsored by the Moblin Your Move Developer's
>> challenge
>> Build the coolest Linux based applications with Moblin SDK & win great
>> prizes
>> Grand prize is a trip for two to an Open Source event anywhere in the
>> world
>> http://moblin-contest.org/redirect.php?banner_id=100&url=/
>> _______________________________________________
>> Gambas-user mailing list
>> Gambas-user at lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/gambas-user
>>
>
>
More information about the User
mailing list