webForumDet fria alternativet

encoding.utf8 eller default?

5 svar · 492 visningar · startad av desdecado

desdecadoMedlem sedan juli 2004213 inlägg
#1

Har problem med encodingen på de websidor jag läser in med följande kodsnutt. Vissa websidor måste jag köra encoding.default och vissa encoding.utf8 för att det ska bli korrekt.

När vissa sidor fungerar med encoding.default så får andra sidor skräptecken istället för de svenska tecknen.
När jag kör encoding.utf8 så fungerar dessa "skräpteckens-sidor" medans andra får sina svenska tecken borttagna.

Hur gör man för att gardera sig mot båda fallen?


    Function getHttpContent(ByVal sURL As String) As String
          Dim result As String = ""
          Try
               Dim objRequest As HttpWebRequest = System.Net.HttpWebRequest.Create(sURL)
               objRequest.Timeout = 4000

               Dim encode As Encoding = System.Text.Encoding.Default 

               Dim sr As New StreamReader(objRequest.GetResponse().GetResponseStream(), encode)
               result = sr.ReadToEnd()
               sr.Close()
               sr = Nothing
               objRequest = Nothing
          Catch ex As Exception
               Return ""
          End Try
          result = System.Web.HttpUtility.HtmlEncode(result) ' Just in case
          Return result
     End Function
renholmMedlem sedan apr. 20012 048 inlägg
#2

Svarar inte webservern med vilken encoding som används? I annat fall torde det gå att läsa från <meta> då dessa är tillgängliga.

fredrikMedlem sedan dec. 19991 082 inlägg
#3

Använd tex. codepage 1252 för att kunna hantera svenska tecken.

Jesper TMedlem sedan nov. 20017 058 inlägg
#4

desdecado = replace("code]","kod]").toString() ;)

desdecadoMedlem sedan juli 2004213 inlägg
#5

Void Jesper_T { } :p

desdecadoMedlem sedan juli 2004213 inlägg
#6

OK, jag ska testa lite snart när jag får tid. Tack för svaren så länge... fungerar det inte så blir det smisk.. =)

Genererad på 387 ms · cache AV · v20260730165559-full.f96bc7eb