Hallo,
habe ein Problem mit dem Encoding von
Zeichen. Bin am verzweifeln.
Ich soll XML-Daten zu einer Web-API
hochladen. Diese Daten müssen ISO-8859-1 kodiert sein.
Ich habe jetzt schon alles versucht.
Bekomme immer den Fehler: „Variableninhalt nicht gueltig fuer
Sorte“ wenn „Sorte“ Umlaute enthält. Seltsamerweise wird das
„scharfe ß“ nicht bemängelt. Es wird akzeptiert, aber auf der
Website nicht angezeigt. Lade ich z.b. weiß hoch, dann steht auf der
Website nachher „Wei“
Das hier ist der Code mit dem ich die XML Datei aus einer Textbox hochlade:
Eigentlich sollte
doch, nach allem was ich gelesen habe, request.ContentType
= "application/xml; charset=ISO-8859-1" reichen um die
Daten zu codieren. Warum funktioniert das nicht?
Komme einfach nicht weiter.
Bedanke mich jetzt schon mal für jede Hilfe.
Viele Grüße
Gregor
*Topic verschoben*
habe ein Problem mit dem Encoding von
Zeichen. Bin am verzweifeln.
Ich soll XML-Daten zu einer Web-API
hochladen. Diese Daten müssen ISO-8859-1 kodiert sein.
Ich habe jetzt schon alles versucht.
Bekomme immer den Fehler: „Variableninhalt nicht gueltig fuer
Sorte“ wenn „Sorte“ Umlaute enthält. Seltsamerweise wird das
„scharfe ß“ nicht bemängelt. Es wird akzeptiert, aber auf der
Website nicht angezeigt. Lade ich z.b. weiß hoch, dann steht auf der
Website nachher „Wei“
Das hier ist der Code mit dem ich die XML Datei aus einer Textbox hochlade:
VB.NET-Quellcode
- Dim URL As String = _host & "DatenHochLaden.php"
- Dim response As HttpWebResponse
- Dim UplText As String = TextBoxXML.Text 'Die XML Daten
- Dim request As HttpWebRequest = CType(HttpWebRequest.Create(URL), HttpWebRequest)
- request.Credentials = New NetworkCredential(_username, _password)
- request.PreAuthenticate = True
- request.ContentLength = UplText.Length
- request.Method = "POST"
- request.KeepAlive = True
- request.ContentType = "application/xml; charset=ISO-8859-1"
- Dim requestStream As Stream = request.GetRequestStream()
- Dim postBytes As Byte() = Encoding.Default.GetBytes(UplText)
- requestStream.Write(postBytes, 0, postBytes.Length)
- requestStream.Close()
- response = CType(request.GetResponse(), HttpWebResponse)
Eigentlich sollte
doch, nach allem was ich gelesen habe, request.ContentType
= "application/xml; charset=ISO-8859-1" reichen um die
Daten zu codieren. Warum funktioniert das nicht?
Komme einfach nicht weiter.
Bedanke mich jetzt schon mal für jede Hilfe.
Viele Grüße
Gregor
*Topic verschoben*
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Marcus Gräfe“ ()