Re: ISO 8859-1 in UTF-8 umwandeln

7. April 2017 13:57

aber an der Kodierung der Texte sollte dies nichts ändern, oder?


Das kann man nicht ausschließen, da NAV das Problem mit den unterschiedlichen Zeichensätzen (CP850 im C/AL-Code bzw. beim Textimport, Textconstanten sind in 2013 noch CP850 in 2015 UTF8 { bin ich imr nicht ganz sicher}, Datenbank-Felder sind UTF8). Das dabei mal etwas schief geht, ist nicht auszuschließen. Die Dotnet- Komponenten haben diese Problem nicht.

Gruß Fiddi

Re: ISO 8859-1 in UTF-8 umwandeln

7. April 2017 13:59

fiddi hat geschrieben:
aber an der Kodierung der Texte sollte dies nichts ändern, oder?


Das kann man nicht ausschließen, da NAV das Problem mit den unterschiedlichen Zeichensätzen (CP850 im C/AL-Code bzw. beim Textimport, Textconstanten sind in 2013 noch CP850 in 2015 UTF8 { bin ich imr nicht ganz sicher}, Datenbank-Felder sind UTF8). Das dabei mal etwas schief geht, ist nicht auszuschließen. Die Dotnet- Komponenten haben diese Problem nicht.

Gruß Fiddi


OK. Bringt dies denn auch etwas, wenn ich keine Datei, sondern nur diesen String habe?
Eine Möglichkeit wäre es noch, daher werde ich sie definitiv einmal ausprobieren.

Gruß
Kai

Re: ISO 8859-1 in UTF-8 umwandeln

10. April 2017 11:42

Hallo zusammen,

das Problem wurde gelöst.
Vielleicht eher schlecht als recht, aber man kann damit arbeiten :)

Es wird nun eine Datei erzeugt, welche das entsprechende Encoding erhält.
Über diese Datei kann man auf den Text mit "richtigen Umlauten" zugreifen.
Code:
outFile.CREATE(TEMPORARYPATH + FileName);                             //Out File
outFile.CREATEOUTSTREAM(outStream2);
streamWriter := streamWriter.StreamWriter(outStream2,encoding.GetEncoding(1252)); //Western-European
streamWriter.Write(ResponseText);
streamWriter.Close;
outFile.CLOSE;

inFile.OPEN(TEMPORARYPATH + FileName);                                     //In File
inFile.CREATEINSTREAM(inStream2);
streamReader := streamReader.StreamReader(inStream2);
ResponseText := streamReader.ReadToEnd;


Ich hatte wohl anfangs etwas falsch gemacht, sodass es nicht funktioniert hat. Ein Kollege brachte dann die Lösung.
Das einzige Problem ist, dass das "&" noch nicht richtig übersetzt wird und weiterhin "&" enthalten bleibt.
Dennoch ist dies das einzige Sonderzeichen und ich denke, dass man damit leben kann.

Danke an eure Hilfe, ich werde hier auf gelöst setzen.

Gruß
Kai

Re: ISO 8859-1 in UTF-8 umwandeln

10. April 2017 12:27

Kai R. hat geschrieben:Das einzige Problem ist, dass das "&" noch nicht richtig übersetzt wird und weiterhin "&" enthalten bleibt.

Das ist bei XML normal, weil das eines der reservierten Zeichen ist, aber wenn man den Inhalt als CDATA definiert, geht es auch ohne, siehe z.B. hier.

Re: ISO 8859-1 in UTF-8 umwandeln

10. April 2017 12:59

Kowa hat geschrieben:
Kai R. hat geschrieben:Das einzige Problem ist, dass das "&" noch nicht richtig übersetzt wird und weiterhin "&" enthalten bleibt.

Das ist bei XML normal, weil das eines der reservierten Zeichen ist, aber wenn man den Inhalt als CDATA definiert, geht es auch ohne, siehe z.B. hier.


Ah, OK.
Dann werde ich das wohl um die anderen Zeichen nochmal erweitern :)

Danke dir.

Gruß
Kai