Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
08.03.2009, 18:41
Beitrag #1
|
DJ_MotionX
LVF-Grünschnabel
Beiträge: 10
Registriert seit: Mar 2009
derzeit 10.0
2004
de
1020
Oesterreich
|
LabVIEW und UTF-8
Hallo. Habe folgendes Problem:
Lese mittels einer dll funktion aus einem XML file Texte aus. In der dll verwende ich eine Bibliothek die UTF-8 unterstützt. Auch die XML Datei ist in UTF-8 codiert. Wenn ich die Txte aber nun in LabVIEW darstellen möchte sieht das ganz nicht mehr so toll aus. derzeit machen nur die Dautschen Ümlaute Probleme. Es ist aber auch geplant anderssprachige Texte (Französich) darzustellen, deswegen hätte ich gerne eine saubere Lösung des Problems. Meine Frage ist nun gibt es in Lab view irgendeine Möglichkeit utf8 darzustellen und wenn ja wie stell ich das an? (Meine Lab view version ist 7.1)
L.g: Michael
|
|
|
08.03.2009, 20:16
Beitrag #3
|
Y-P
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
Beiträge: 12.612
Registriert seit: Feb 2006
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
|
LabVIEW und UTF-8
:bahn:Ich hole aus einer Datenbank mit UTF8-Format Daten und das klappt problemlos.
Gruß Markus
' schrieb:LabVIEW benützt MultiByte Codierung. Wenn Du auf Windows arbeitest kannst Du mit MultiByteToWideChar und WideCharToMultiByte zusammen einen UTF8 nach MultiByte Translator machen. Grundsätzlich musst Du dann den UTF8 String mittels MultiByteToWideChar nach UTF16 konvertieren und dann von da mittels WideCharToMultiByte nach dem LabVIEW MultiByte Format.
Nicht trivial aber durchaus machbar.
Rolf Kalbermatter
--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
|
|
|
08.03.2009, 21:12
Beitrag #4
|
rolfk
LVF-Guru
Beiträge: 2.305
Registriert seit: Jun 2007
alle seit 6.0
1992
EN
2901GG
Niederlande
|
LabVIEW und UTF-8
' schrieb::bahn:Ich hole aus einer Datenbank mit UTF8-Format Daten und das klappt problemlos.
Gruß Markus
Ja aber welches Datenbanktoolkit verwendest Du? ODBC und auch ADO arbeitet grundsätzlich mit ANSI oder WideChar (UTF16). UTF8 ist nicht Bestandteil der ODBC oder ADO Definition.
ADO liefert ja ganz einfach OLE Variants zurück und die Database Variant to LabVIEW Data Konversion kann ganz zufällig UTF16 String OLE Variants auch nach einem LabVIEW MultiByte String konvertieren. Die enstprechende "was auch immer" nach UTF16 Konversion übernimmt der Datenbanktreiber.
Rolf Kalbermatter
|
|
|
09.03.2009, 08:11
Beitrag #5
|
Y-P
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
Beiträge: 12.612
Registriert seit: Feb 2006
Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN
71083
Deutschland
|
LabVIEW und UTF-8
Ich hab' das Database Connectivity Toolkit von NI. Da kommen Variants zurück und die wandle ich in Strings.
Gruß Markus
' schrieb:Ja aber welches Datenbanktoolkit verwendest Du? ODBC und auch ADO arbeitet grundsätzlich mit ANSI oder WideChar (UTF16). UTF8 ist nicht Bestandteil der ODBC oder ADO Definition.
ADO liefert ja ganz einfach OLE Variants zurück und die Database Variant to LabVIEW Data Konversion kann ganz zufällig UTF16 String OLE Variants auch nach einem LabVIEW MultiByte String konvertieren. Die enstprechende "was auch immer" nach UTF16 Konversion übernimmt der Datenbanktreiber.
Rolf Kalbermatter
--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
|
|
|
09.03.2009, 09:18
(Dieser Beitrag wurde zuletzt bearbeitet: 09.03.2009 09:20 von rolfk.)
Beitrag #6
|
|
|
10.03.2009, 12:36
Beitrag #7
|
DJ_MotionX
LVF-Grünschnabel
Beiträge: 10
Registriert seit: Mar 2009
derzeit 10.0
2004
de
1020
Oesterreich
|
LabVIEW und UTF-8
' schrieb:LabVIEW benützt MultiByte Codierung. Wenn Du auf Windows arbeitest kannst Du mit MultiByteToWideChar und WideCharToMultiByte zusammen einen UTF8 nach MultiByte Translator machen. Grundsätzlich musst Du dann den UTF8 String mittels MultiByteToWideChar nach UTF16 konvertieren und dann von da mittels WideCharToMultiByte nach dem LabVIEW MultiByte Format.
Nicht trivial aber durchaus machbar.
Rolf Kalbermatter
Das Problem ist nicht das erkennen und das umwandeln der einzelnen speziellen UTF-8 Zeichen zurück in ASCII sondern das direkte anzeigen in LabVIEW. Ich könnte schon für die deutsche Sprache einen zeichenersetzer für die paar umlaute (Ä,ä,ö ..) basteln. Jedoch empfinde ich das nicht als saubere Lösung denn zukünftig sollen dann auch französische zeichen u.s.w. in den Textfelden von LabVIEW angezeigt werden können, also direkt der UTF8 codierte String.
L.g. Michael
|
|
|
10.03.2009, 13:04
Beitrag #8
|
|
|
10.03.2009, 16:00
Beitrag #9
|
|
|
10.03.2009, 20:39
|
DJ_MotionX
LVF-Grünschnabel
Beiträge: 10
Registriert seit: Mar 2009
derzeit 10.0
2004
de
1020
Oesterreich
|
LabVIEW und UTF-8
' schrieb:Versuch doch einmal, in der Stringanzeige, die Schriftart auf "Terminal" umzustellen.
Das hilft leider nicht.
|
|
|
| |