[GELÖST] ISO 8859-1 in UTF-8 umwandeln

Bild Microsoft Dynamics NAV 2016

[GELÖST] ISO 8859-1 in UTF-8 umwandeln

Beitragvon Kai R. » 6. April 2017 11:31

Hallo zusammen,

nach stundenlanger Forschung und einem Fortschritt von 0% wende ich mich nun hoffnungsvoll an euch.
Im generellen geht es darum, dass ich einen UTF-8 String habe, der die Sonderzeichen als ISO 8859-1 interpretiert und ich somit die Sonderzeichen nicht in NAV anzeigen lassen kann.

Nun aber noch einmal genauer.
Ich bekomme von einem WebService einen String zurück, der eine XML-Struktur besitzt und das Encoding UTF-8 besitzt.
Code: Alles auswählen
<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type="text/xsl" href="/DocuWare/Platform/Content/standard.xslt"?><DocumentsQueryResult xmlns:s="http://dev.docuware.com/schema/public/services" TimeStamp="2017-04-06T06:04:16Z" xmlns="http://dev.docuware.com/schema/public/services/platform"><Count>1</Count><Items><Item HaveMoreTotalPages="true" Id="376" Title="Unnamed Document with id 376 from 04/05/2017 15:44:34" LastModified="2017-04-06T05:52:52Z" CreatedAt="2017-04-05T13:44:34Z" FileSize="4126" SectionCount="2"><Fields><Field FieldName="COMPANY" FieldLabel="Firma" IsNull="true" /><Field FieldName="CONTACT" FieldLabel="Kontakt"><String>12345</String></Field><Field FieldName="SUBJECT" FieldLabel="Betreff/Nr."><String>€ ä Ä ü Ü ö Ö &amp; ß é È è È ´ ` Á Ó Ú á ó ú À Ò Ù à ò ù í Í ì Ì â Â Ô ô û Û ê Ê î Î ł Ł</String></Field>

Wie ihr allerdings am Ende des Strings erkennen könnt besitzt es nicht wirklich den Encoding UTF-8.
In dem Programm, woher ich den String bekomme habe ich folgende Zeichenkette
Code: Alles auswählen
€ ä Ä ü Ü ö Ö & ß é È è È ´ ` Á Ó Ú á ó ú À Ò Ù à ò ù í Í ì Ì â Â Ô ô û Û ê Ê î Î ł Ł

Auf Grund einer Seite (sind Fremdlinks erlaubt?) habe ich herausgefunden, dass es sich hierbei um "ISO 8859-1" handelt.

Nun stellt sich mir die Frage, wie ich diese Zeichen in UTF-8 bekomme, um sie richtig in NAV anzeigen zu können.
Ich habe es bereits versucht als Datei mit UTF-8 zu speichern und wieder ab zu rufen. Leider ohne Erfolg.

Ich hoffe, dass mir einer von euch weiter helfen kann, da dies für meine Schnittstelle zum anderen Programm sehr wichtig ist.


Viele Grüße
Kai
Zuletzt geändert von Kai R. am 11. April 2017 07:20, insgesamt 1-mal geändert.
Kai R.
 
Beiträge: 60
Registriert: 28. Juni 2012 11:39
Wohnort: Mannheim
Realer Name: Kai Rempel
Arbeitsort: Frankfurt

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon MichaelK » 6. April 2017 12:55

Hallo Kai,

vielleicht hilft der der folgende Link weiter:

http://www.dynamics.is/?p=617

Gruß

Michael
MichaelK
Microsoft Partner
Microsoft Partner
 
Beiträge: 550
Registriert: 4. März 2009 10:21
Realer Name: Michael Kaluza
Arbeitsort: Lustenau
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: 3.70,4.00,5,2009,2013,2015

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon Kowa » 6. April 2017 12:59

Hier sind meine Konvertierungsskripte, ich habe da eben noch eins für diesen Fall ergänzt.
Gruß, Kai

Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, Messenger oder Telefon! Dafür ist dieses Forum da.

Download: Dynamics NAV Object Text Explorer (Alternativlink). MVP Alumni
Benutzeravatar
Kowa
Moderator
Moderator
 
Beiträge: 7835
Registriert: 17. Juni 2005 17:32
Wohnort: Bremen
Realer Name: Kai Kowalewski
Arbeitsort: Osterholz-Scharmbeck
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics 365
Microsoft Dynamics Version: BC, NAV 2018 bis Navision 2.01

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon Kai R. » 6. April 2017 13:22

MichaelK hat geschrieben:Hallo Kai,

vielleicht hilft der der folgende Link weiter:

http://www.dynamics.is/?p=617

Gruß

Michael


Servus Michael,

das habe ich auch schon gesehen, bringt mich persönlich aber nicht weiter. Es wird von ISO nach UTF-8 konvertiert.
Ich brauche es aber anders herum und mir fehlt leider das Know-How, wie ich das umbauen könnte.


Kowa hat geschrieben:Hier sind meine Konvertierungsskripte, ich habe da eben noch eins für diesen Fall ergänzt.


Servus Kai,

ich habe es mir einmal angeschaut und wie folgt getestet:
Code: Alles auswählen
Name   DataType   Subtype   Length
textfile   Text      
IOFile   DotNet   System.IO.File.'mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'   
Textencode   DotNet   System.Text.Encoding.'mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'   


Code:
textfile := ValueText;
IOFile.WriteAllText('C:\temp\Druck\test.txt',textfile,Textencode.GetEncoding(65001));

Da ich den Text schon habe und nicht aus einer Datei holen muss, habe ich deine "ANSI1252 (ISO 8859-1) nach UTF-8"-Funktion stark gekürzt und schreibe mir lediglich diese eine Datei.
Allerdings erhalte ich die gleichen komischen Zeichen, wie sie in meiner Variablen stehen.
Habe ich hier etwas übersehen?

Gruß
Kai
Kai R.
 
Beiträge: 60
Registriert: 28. Juni 2012 11:39
Wohnort: Mannheim
Realer Name: Kai Rempel
Arbeitsort: Frankfurt

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon fiddi » 6. April 2017 13:25

Hallo,

Grundsätzlich solltest du dich mit der Codeunit 6224 bzw. den darin verwendeten DOTNet- Komponenten auseinandersetzen. Außerdem kann der Blick auf die DotNet- Komponenten System.Convert und System.Text.Encoding nicht schaden.

Gruß Fiddi
Wer aufhört besser zu werden, hat aufgehört gut zu sein. (frei nach Philip Rosenthal)
Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, IM oder Telefon! Dafür ist dieses Forum da.
fiddi
Moderator
Moderator
 
Beiträge: 7091
Registriert: 9. Juni 2008 10:13
Realer Name: Hans Heinrich Fiddelke
Arbeitsort: Bremen
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: NAV2.6-aktuell

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon Kowa » 6. April 2017 13:59

Kai R. hat geschrieben:In dem Programm, woher ich den String bekomme habe ich folgende Zeichenkette
Code: Alles auswählen
€ ä Ä ü Ü ö Ö & ß é È è È ´ ` Á Ó Ú á ó ú À Ò Ù à ò ù í Í ì Ì â Â Ô ô û Û ê Ê î Î ł Ł

Auf Grund einer Seite (sind Fremdlinks erlaubt?) habe ich herausgefunden, dass es sich hierbei um "ISO 8859-1" handelt.

Nicht ganz, die letzten beiden (ł Ł) gehören zum polnischen Alphabet, die gehören z.B. nicht zur Codepage 1252, sind in Code Page 1250 Windows Latin 2 (Central Europe) bzw. ISO 8859-2 enthalten.

Fremdlinks sind erlaubt, solange es keine Werbung ist.
Gruß, Kai

Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, Messenger oder Telefon! Dafür ist dieses Forum da.

Download: Dynamics NAV Object Text Explorer (Alternativlink). MVP Alumni
Benutzeravatar
Kowa
Moderator
Moderator
 
Beiträge: 7835
Registriert: 17. Juni 2005 17:32
Wohnort: Bremen
Realer Name: Kai Kowalewski
Arbeitsort: Osterholz-Scharmbeck
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics 365
Microsoft Dynamics Version: BC, NAV 2018 bis Navision 2.01

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon fiddi » 6. April 2017 14:02

Code: Alles auswählen
<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type="text/xsl" href="/DocuWare/Platform/Content/standard.xslt"?><DocumentsQueryResult xmlns:s="http://dev.docuware.com/schema/public/services" TimeStamp="2017-04-06T06:04:16Z" xmlns="http://dev.docuware.com/schema/public/services/platform"><Count>1</Count><Items><Item HaveMoreTotalPages="true" Id="376" Title="Unnamed Document with id 376 from 04/05/2017 15:44:34" LastModified="2017-04-06T05:52:52Z" CreatedAt="2017-04-05T13:44:34Z" FileSize="4126" SectionCount="2"><Fields><Field FieldName="COMPANY" FieldLabel="Firma" IsNull="true" /><Field FieldName="CONTACT" FieldLabel="Kontakt"><String>12345</String></Field><Field FieldName="SUBJECT" FieldLabel="Betreff/Nr."><String>€ ä Ä ü Ü ö Ö &amp; ß é È è È ´ ` Á Ó Ú á ó ú À Ò Ù à ò ù í Í ì Ì â Â Ô ô û Û ê Ê î Î ł Ł</String></Field>

Eigentlich sagt auch der XMl-String nichts aus, solange nicht geklärt ist, mit welchem Editor und in welcher Kodierung er sich das ganze angeschaut hat.

Gruß Fiddi
Wer aufhört besser zu werden, hat aufgehört gut zu sein. (frei nach Philip Rosenthal)
Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, IM oder Telefon! Dafür ist dieses Forum da.
fiddi
Moderator
Moderator
 
Beiträge: 7091
Registriert: 9. Juni 2008 10:13
Realer Name: Hans Heinrich Fiddelke
Arbeitsort: Bremen
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: NAV2.6-aktuell

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon Kai R. » 6. April 2017 14:23

Hallo zusammen,

Jetzt wo du es sagst Kai, hast du Recht mit der CodePage. Ich hatte lediglich die gängigen wie "ä,ö,ü" geprüft.
Das mit dem ł / Ł macht es mir nicht einfacher. Jetzt bin ich noch verwirrter.

@ Fiddi:
Die DotNets habe ich mir bereits angeschaut, aber alles was ich bis jetzt versucht habe den Text um zu wandeln war erfolglos.
Auf deine Frage mit welchem Editor und welcher Kodierung ich mir das anschaue:
Ich bekomme diesen String vom Drittprogramm wieder und lass es mir als MESSAGE ausgeben. Schon in der MESSAGE sind die Werte dementsprechend zu sehen. Das heißt ich benutze keinen Editor und die NAV-Kodierung bzw. die die aus dem Drittprogramm kommt, welche laut XML-Struktur UTF-8 sein soll.

Lediglich, um euch den String hierher zu kopieren war der String kurze Zeit in Notepad.


Gruß
Kai
Kai R.
 
Beiträge: 60
Registriert: 28. Juni 2012 11:39
Wohnort: Mannheim
Realer Name: Kai Rempel
Arbeitsort: Frankfurt

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon fiddi » 6. April 2017 14:41

Lediglich, um euch den String hierher zu kopieren war der String kurze Zeit in Notepad.


Schreib den XML-String mal binär in eine Datei. (kein "cut an paste", keine Textdatei, den Text direkt im Programm in eine Datei speichern)
Dann schau dir diese Datei mal mit dem Notepad++ an, und teste mit dem Menüpunkt Kodierung so lange bis dein Text passt, dann hast du die richtige Codepage raus gefunden.

Den Text in der Codepage musst du dann mit Convert in UTF8 umwandeln.

Gruß Fiddi
Wer aufhört besser zu werden, hat aufgehört gut zu sein. (frei nach Philip Rosenthal)
Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, IM oder Telefon! Dafür ist dieses Forum da.
fiddi
Moderator
Moderator
 
Beiträge: 7091
Registriert: 9. Juni 2008 10:13
Realer Name: Hans Heinrich Fiddelke
Arbeitsort: Bremen
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: NAV2.6-aktuell

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon Kowa » 6. April 2017 14:59

Da der Text Sonderzeichen enthält (mit Codepagemix?), müsste die UTF-8-Datei auch die korrekte Byte Order Mark (BOM) haben, das würde ich auch mal prüfen wie hier beschrieben.
Gruß, Kai

Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, Messenger oder Telefon! Dafür ist dieses Forum da.

Download: Dynamics NAV Object Text Explorer (Alternativlink). MVP Alumni
Benutzeravatar
Kowa
Moderator
Moderator
 
Beiträge: 7835
Registriert: 17. Juni 2005 17:32
Wohnort: Bremen
Realer Name: Kai Kowalewski
Arbeitsort: Osterholz-Scharmbeck
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics 365
Microsoft Dynamics Version: BC, NAV 2018 bis Navision 2.01

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon Kowa » 6. April 2017 17:27

Kai R. hat geschrieben: "ANSI1252 (ISO 8859-1) nach UTF-8"-Funktion

Das sind jetzt zwei Funktionen, weil diese zwar sehr ähnlich, aber doch verschieden sind :wink: (bei ANSI1252 im Bereich 128 - 159 Druckzeichen statt Steuerzeichen bei ISO 8859-1).
Gruß, Kai

Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, Messenger oder Telefon! Dafür ist dieses Forum da.

Download: Dynamics NAV Object Text Explorer (Alternativlink). MVP Alumni
Benutzeravatar
Kowa
Moderator
Moderator
 
Beiträge: 7835
Registriert: 17. Juni 2005 17:32
Wohnort: Bremen
Realer Name: Kai Kowalewski
Arbeitsort: Osterholz-Scharmbeck
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics 365
Microsoft Dynamics Version: BC, NAV 2018 bis Navision 2.01

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon Kai R. » 7. April 2017 08:10

Guten morgen zusammen,

@Fiddi:
Leider hatte dies kein Erfolg. Ich habe alle möglichen Kodierungen ausprobiert, die mir Notepad++ zur Verfügung stellt.
Allerdings wurde mir bei keiner die richtigen Sonderzeichen angezeigt.

@Kowa:
Jetzt wurden bei mir auch zwei verschiedene Funktionen angezeigt. Gestern war dies noch in einer zusammen gefasst.
Ich habe allerdings keine Datei, die ich zum lesen benutze, sondern nur diesen String. Das heißt ich müsste mir erst eine Datei im ISO-Format erstellen, diese Datei in UTF-8 umwandeln und letztendlich die zweite Datei zum bearbeiten verwenden? Das klingt für mich nach zu vielen Umwegen, als dass es so gewollt sein kann?

Die Datei, die ich daraus erstellt habe hatte auch die richtige BOM.



Ich glaube so langsam mir bleibt nichts anderes übrig als bei dem Hersteller nach der Kodierung und der Codepage zu fragen, welche beim Webservice benutzt wird.
Eine Information noch:
Um von NAV mit dem Drittpgramm kommunizieren zu können bzw. Umlaute senden zu können, habe ich die Funktion von Timo benutzt http://www.msdynamics.de/viewtopic.php?f=20&t=4001 "Text2HTMLdec".
Anders herum funktioniert dies ja, aber leider nicht.

Gruß
Kai
Kai R.
 
Beiträge: 60
Registriert: 28. Juni 2012 11:39
Wohnort: Mannheim
Realer Name: Kai Rempel
Arbeitsort: Frankfurt

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon fiddi » 7. April 2017 08:17

Hallo,

kannst du die abgespeicherte XML-Datei mal hochladen, oder sind da vertrauliche Daten drin?

Zu Timo's Tools, da solltest du etwas vorsichtig sein, es könnte sein,das die mit dem neuen Textformat UTF8 in NAV Probleme haben, und nicht immer wirklich vollständig funktionieren, da Sie teilweise noch aus Zeiten vor NAV 2009 stammen.

Wenn's nicht so ist kann Timo ja noch mal eine Info geben. :wink:

Gruß Fiddi
Wer aufhört besser zu werden, hat aufgehört gut zu sein. (frei nach Philip Rosenthal)
Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, IM oder Telefon! Dafür ist dieses Forum da.
fiddi
Moderator
Moderator
 
Beiträge: 7091
Registriert: 9. Juni 2008 10:13
Realer Name: Hans Heinrich Fiddelke
Arbeitsort: Bremen
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: NAV2.6-aktuell

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon Kai R. » 7. April 2017 08:32

Hallo Fiddi:

Ich hatte das gleiche Problem mit den Sonderzeichen, wenn ich zum Drittprogramm etwas übergeben habe. Daraufhin habe ich einfach mal die Funktionen von Timo getestet und eine hat funktioniert :)
Ich hoffe, ich habe die Datei richtig hochgeladen. In der .rar ist der komplette Antwortstring einmal als .txt und einmal als .xml.

Gruß
Kai
Dateianhänge
Testumlaute.rar
(2.9 KiB) 191-mal heruntergeladen
Kai R.
 
Beiträge: 60
Registriert: 28. Juni 2012 11:39
Wohnort: Mannheim
Realer Name: Kai Rempel
Arbeitsort: Frankfurt

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon Kowa » 7. April 2017 09:28

Kai R. hat geschrieben:Das heißt ich müsste mir erst eine Datei im ISO-Format erstellen, diese Datei in UTF-8 umwandeln und letztendlich die zweite Datei zum bearbeiten verwenden?

Man kann auch den Inhalt der Quelldatei austauschen, wie hier beschrieben. Wenn allerdings gar keine Datei vorhanden ist, müsste man die Skripte natürlich noch weiter anpassen.
Gruß, Kai

Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, Messenger oder Telefon! Dafür ist dieses Forum da.

Download: Dynamics NAV Object Text Explorer (Alternativlink). MVP Alumni
Benutzeravatar
Kowa
Moderator
Moderator
 
Beiträge: 7835
Registriert: 17. Juni 2005 17:32
Wohnort: Bremen
Realer Name: Kai Kowalewski
Arbeitsort: Osterholz-Scharmbeck
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics 365
Microsoft Dynamics Version: BC, NAV 2018 bis Navision 2.01

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon fiddi » 7. April 2017 10:06

Hallo
Nach dem Hexdump zu urteilen ist das tatsächlich Schrott, bzw. nicht das von dem du sagst das es das sein soll:
Das gilt aber nur dann, wenn du den XML String so wie er gekommen ist, binär in eine Datei geschrieben hast. Wenn da noch die Textkonvertierung von NAV dran war hast du leider verloren.

Hier ein Link dazu.

Gruß Fiddi
Wer aufhört besser zu werden, hat aufgehört gut zu sein. (frei nach Philip Rosenthal)
Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, IM oder Telefon! Dafür ist dieses Forum da.
fiddi
Moderator
Moderator
 
Beiträge: 7091
Registriert: 9. Juni 2008 10:13
Realer Name: Hans Heinrich Fiddelke
Arbeitsort: Bremen
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: NAV2.6-aktuell

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon Kai R. » 7. April 2017 10:28

Hallo Fiddi,

ist die Textkonvertierung von NAV auch schon dran, wenn der Text rein in der Programmierung verwendet wird, oder erst, wenn es in ein Feld geschrieben und angezeigt wird?
Da ich den WebService in der Programmierung anspreche und daher auch dorthin die Antwort bekomme, habe ich also keine Chance ohne NAV die Antwort zu bearbeiten.

Gruß
Kai
Kai R.
 
Beiträge: 60
Registriert: 28. Juni 2012 11:39
Wohnort: Mannheim
Realer Name: Kai Rempel
Arbeitsort: Frankfurt

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon fiddi » 7. April 2017 10:49

Evtl schon, wenn du diesen Text unmittelbar nachdem du Ihn von der Leitung gelesen hast benutzt, als nix XML-Port oder so.

Gruß Fiddi
Wer aufhört besser zu werden, hat aufgehört gut zu sein. (frei nach Philip Rosenthal)
Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, IM oder Telefon! Dafür ist dieses Forum da.
fiddi
Moderator
Moderator
 
Beiträge: 7091
Registriert: 9. Juni 2008 10:13
Realer Name: Hans Heinrich Fiddelke
Arbeitsort: Bremen
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: NAV2.6-aktuell

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon Kai R. » 7. April 2017 11:03

Hallo Fiddi,

zum verarbeiten der Daten, die ich hier als XML-String benutze verwende ich keine Datei, XMLPort oder ähnliches.
Ich baue die XML-Struktur per Programmierung auseinander und hole mir so die benötigten Informationen.
Der String, den ich gestern um 11:31Uhr geschrieben habe stammt direkt vom Webservice.

Gruß
Kai
Kai R.
 
Beiträge: 60
Registriert: 28. Juni 2012 11:39
Wohnort: Mannheim
Realer Name: Kai Rempel
Arbeitsort: Frankfurt

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon fiddi » 7. April 2017 11:11

Du nutzt nicht DotNet "System.Xml" ?

Gruß Fiddi
Wer aufhört besser zu werden, hat aufgehört gut zu sein. (frei nach Philip Rosenthal)
Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, IM oder Telefon! Dafür ist dieses Forum da.
fiddi
Moderator
Moderator
 
Beiträge: 7091
Registriert: 9. Juni 2008 10:13
Realer Name: Hans Heinrich Fiddelke
Arbeitsort: Bremen
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: NAV2.6-aktuell

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon Kowa » 7. April 2017 11:15

Ich würde den String byteweise lesen wie hier im letzten Beitrag beschrieben:
http://forum.mibuso.com/discussion/45344/xmlport-and-webservice-performance-encoding-problems

Da sind sogar Steuerzeichen drin, da ist nichts mehr zu konvertieren.
TestCP1.png
Gruß, Kai

Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, Messenger oder Telefon! Dafür ist dieses Forum da.

Download: Dynamics NAV Object Text Explorer (Alternativlink). MVP Alumni
Benutzeravatar
Kowa
Moderator
Moderator
 
Beiträge: 7835
Registriert: 17. Juni 2005 17:32
Wohnort: Bremen
Realer Name: Kai Kowalewski
Arbeitsort: Osterholz-Scharmbeck
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics 365
Microsoft Dynamics Version: BC, NAV 2018 bis Navision 2.01

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon Kai R. » 7. April 2017 11:46

Hallo zusammen,

ich benutze keine DotNet-Variablen, um den String aus einander zu bauen.
Dies hat den Grund, dass die Schnittstelle in verschiedenen NAV-Versionen eingesetzt werden soll und kann.
ich denke aber, dass die Aufbereitung per System.XML nichts an der Kodierung/Umlauten ändern würde, oder täusche ich mich da?


Das byteweise Lesen habe ich ausprobiert, da ich das noch nicht getestet hatte.
Leider hat auch dies nicht zum gewünschten Erfolg geführt.


Gruß
Kai
Kai R.
 
Beiträge: 60
Registriert: 28. Juni 2012 11:39
Wohnort: Mannheim
Realer Name: Kai Rempel
Arbeitsort: Frankfurt

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon Kowa » 7. April 2017 13:13

Kai R. hat geschrieben:ich benutze keine DotNet-Variablen, um den String aus einander zu bauen.
Dies hat den Grund, dass die Schnittstelle in verschiedenen NAV-Versionen eingesetzt werden soll und kann.

Welche sollen das denn werden? Das wird in älteren ohnehin so nicht funktionieren, alle unicodefähigen NAV-Systeme können auch DotNet, NAV 2009 R2 (technisch reicht) kann auch schon etwas DotNet, aber als Nicht-Unicodesystem den String nach Konvertierung ohnehin nur teilweise mit dem Zeichenvorrat von Codepage 1252 bzw. intern 850 verarbeiten.
Gruß, Kai

Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, Messenger oder Telefon! Dafür ist dieses Forum da.

Download: Dynamics NAV Object Text Explorer (Alternativlink). MVP Alumni
Benutzeravatar
Kowa
Moderator
Moderator
 
Beiträge: 7835
Registriert: 17. Juni 2005 17:32
Wohnort: Bremen
Realer Name: Kai Kowalewski
Arbeitsort: Osterholz-Scharmbeck
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics 365
Microsoft Dynamics Version: BC, NAV 2018 bis Navision 2.01

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon fiddi » 7. April 2017 13:23

ich benutze keine DotNet-Variablen, um den String aus einander zu bauen.
Dies hat den Grund, dass die Schnittstelle in verschiedenen NAV-Versionen eingesetzt werden soll und kann.


Codeunit 6224 gibt es auch schon in NAV2009.

Gruß Fiddi
Wer aufhört besser zu werden, hat aufgehört gut zu sein. (frei nach Philip Rosenthal)
Frage beantwortet? Schreibe bitte [Gelöst] vor den Titel des ersten Beitrags.
Bitte erst suchen, dann fragen. Bitte beachte den kleinen Community-Knigge.
Kein Support per PN, Mail, IM oder Telefon! Dafür ist dieses Forum da.
fiddi
Moderator
Moderator
 
Beiträge: 7091
Registriert: 9. Juni 2008 10:13
Realer Name: Hans Heinrich Fiddelke
Arbeitsort: Bremen
Bezug zu Microsoft Dynamics: Microsoft Partner
Microsoft Dynamics Produkt: Microsoft Dynamics NAV
Microsoft Dynamics Version: NAV2.6-aktuell

Re: ISO 8859-1 in UTF-8 umwandeln

Beitragvon Kai R. » 7. April 2017 13:38

Hallo zusammen,

die Schnittstelle soll in NAV 2013 folgende eingesetzt werden können.
Ihr mögt recht haben, dass ich mir mit den DotNets einiges an Arbeit erspart hätte, aber an der Kodierung der Texte sollte dies nichts ändern, oder?


Gruß
Kai
Kai R.
 
Beiträge: 60
Registriert: 28. Juni 2012 11:39
Wohnort: Mannheim
Realer Name: Kai Rempel
Arbeitsort: Frankfurt

Nächste

Zurück zu NAV 2016

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast