Avatar billede hedemann Nybegynder
04. januar 2006 - 15:07 Der er 6 kommentarer og
1 løsning

Test af StreamWriter før lukning

Jeg streamer data på til en webserver, men får flg. fejl "System.IO.IOException: Cannot close stream until all bytes are written"

Se eksempel.

Private Sub postThis(ByVal tekst As String)

    Dim encoding As ASCIIEncoding = New ASCIIEncoding
    Dim postData As String = tekst
    Dim data As Byte() = encoding.GetBytes(postData)

    'laver request.
    Dim myRequest As System.Net.HttpWebRequest = System.Net.WebRequest.Create("HTTP://XYZ.COM")
    myRequest.Method = "POST"
    myRequest.ContentType = "application/x-www-form-urlencoded"
    myRequest.ContentLength = data.Length

    Dim newStream As IO.StreamWriter = New IO.StreamWriter(myRequest.GetRequestStream)

    'Sender stream
    newStream.Write(tekst)
    newStream.Close()

End Sub

Hvordan tester man om newStream er tom, inden man lukker streameren?
Avatar billede dr_chaos Nybegynder
04. januar 2006 - 15:40 #1
hvad med noget i denne stil:
If Not NewStream Is Nothing Then
NewStream.close()
End If
Avatar billede nielle Nybegynder
04. januar 2006 - 19:53 #2
...
newStream.Write(tekst)
newStream.Flush()
newStream.Close()
...
Avatar billede arne_v Ekspert
04. januar 2006 - 22:13 #3
jeg har svært ved at tro at en Close ikke laver en Flush
Avatar billede hedemann Nybegynder
18. januar 2006 - 11:45 #4
Virker - mange tak. Hvordan giver jeg point til dr chaos
Avatar billede nielle Nybegynder
18. januar 2006 - 11:51 #5
Du beder ham bare om at lægge et svar - men mon ikke at han gør det af sig selv nu? :^)
Avatar billede dr_chaos Nybegynder
18. januar 2006 - 12:06 #6
må jo sige at nielle har helt ret :)
Avatar billede hedemann Nybegynder
18. januar 2006 - 12:52 #7
si
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester