[Gelöst] Unicode Text in Blob schreiben

6. März 2015 14:23

Der Titel klingt so, als wäre das nicht einfach lösbar über Automations oder .NET StreamWriter/StreamReader, ich weiß.

Ich habe folgenden Code:
Code:
Record.CALCFIELDS(Record.BLOB);
tempFileName := 'E:\test.txt';
helpFile.CREATE(tempFileName);
helpFile.CREATEOUTSTREAM(outStream);
Record.BLOB.CREATEINSTREAM(inStream);
COPYSTREAM(outStream, inStream);
helpFile.CLOSE();


Diese Datei wird dann im Notepad Editor geöffnet zur Bearbeitung durch den Nutzer. Hier ist es nur möglich die Eingabe in ANSI Codierung zu speichern.

Kann ich anhand des obigen Codes auch Unicode/UTF-8 Text speichern oder geht dies ausschließlich über .NET bzw. Automations? Ich meine mal gelesen zu haben, dass die Standardcodierung ANSI/MS-DOS ist... ich hoffte das man das irgendwie ändern kann.

Grüße,
Thomas
Zuletzt geändert von ThomasM am 9. März 2015 11:14, insgesamt 1-mal geändert.

Re: Unicode Text in Blob schreiben

6. März 2015 15:06

Ab NAV 2013 R2 kann man TextEncoding bei Dateien einstellen, in NAV 2013 geht das nur bei XMLports
https://msdn.microsoft.com/en-us/library/dn271702%28v=nav.71%29.aspx
Hier ist Beispielcode für eine Umwandlung mit .NET
http://blogs.msdn.com/b/nav/archive/2012/12/05/unicode-and-microsoft-dynamics-nav-2013.aspx

Re: Unicode Text in Blob schreiben

9. März 2015 11:14

Danke Kowa!
Auf diese Beiträge bin ich auch schon gestoßen.

Meine Frage ist damit beantwortet.