Syntax der VI-String-Datei
- Aktualisiert2026-08-20
- 5 Minute(n) Lesezeit
Verstehen der Struktur von VI-String-Dateien für die VI-Lokalisierung
Das Format einer VI-String-Datei ähnelt dem einer HTML-Datei. Das System kennzeichnet jedes Element mit einem Start- und einem End-Tag. Ein Start-Tag beginnt mit < und endet mit >. Ein End-Tag beginnt mit </ und endet mit >. Alle nicht darstellbaren Zeichen außerhalb von Text werden ignoriert. Da das Zeichen < den Beginn eines Tags kennzeichnet, verwendet LabVIEW << für das Kleiner-als-Zeichen in Text. Analog verwendet LabVIEW für das Größer-als-Zeichen >>. LabVIEW ersetzt das doppelte Anführungszeichen durch "". Des Weiteren kennzeichnet LabVIEW Zeilenendzeichen mit <CR> (Wagenrücklauf), <CRLF> (Wagenrücklauf gefolgt von einem Zeilenvorschub) oder <LF> (Zeilenvorschub). Das Format der VI-String-Datei soll maschinenlesbar sein. Für Sie ist die Datei daher möglicherweise nicht leicht lesbar. Jede Zeile einer Exportdatei enthält maximal zwei Tags für Privat- oder Standarddaten. In LabVIEW werden die Objekte auch auf jeder Unterebene eingerückt. Wenn Sie Tags ändern oder löschen, gibt LabVIEW beim Import der Datei in das VI Fehlermeldungen aus.
In der folgenden Tabelle sind die VI-Tag-Typen und die entsprechende VI-Tag-Syntax dargestellt.
| VI-Tag-Typ | VI-Tag-Syntax |
|---|---|
|
[VI-String-Datei]. |
<VI [VI-Attribute] > [VI-Info] </VI> |
|
[VI-Attribute]. |
syntaxVersion=5 LVversion=nnn revision=nnn name="text" |
|
[VI-Info]. |
[VI-Titel] [Beschreibung] [Inhalt] [BD-Inhalt] |
|
[VI-Titel]. |
<TITLE>text</TITLE>|.<TITLE><NO_TITLE></TITLE>. |
|
[Beschreibung]. |
<DESC>Text</DESC>. |
|
[Inhalt]. |
<CONTENT>[Grouper] [Objekte]</CONTENT> |
|
[BD-Inhalt]. |
<BDCONTENT>[BD-Objekte] </BDCONTENT> |
VI-Attribute werden durch ein Leerzeichen getrennt. Zwischen Attributnamen und folgendem Gleichheitszeichen sowie zwischen Gleichheitszeichen und Attributwert ist kein Leerzeichen erlaubt.
Beispiel:
<VI syntaxVersion=5 LVversion=4502007 revision=10 name="AO Generate Waveform.vi">
<TITLE>AO Generate Waveform.vi</TITLE>
<DESC>Erzeugt am angegebenen Ausgabekanal einen getakteten, einfach gepufferten Signalverlauf mit der angegebenen Update-Rate.</DESC>
<CONTENT>
........
</CONTENT>
</VI>
In der folgenden Tabelle werden die Tags, die den Inhalt des Frontpanels beschreiben (freie und zu Objekten gehörige Beschriftungen, Untertitelbeschriftungen, Attribute), und die entsprechende Syntax dargestellt.
| Inhalts-Tag-Typ | Inhalts-Tag-Syntax |
|---|---|
|
[Inhalt] |
<CONTENT>[Grouper] [Objekte]</CONTENT> |
|
[Grouper] |
<GROUPER>[Teile]</GROUPER> |
|
[Objekte] |
([Element] | [Beschriftung]) * |
|
[Element] |
<CONTROL [Elementattribute]> [Element-Info] </CONTROL> |
|
[Beschriftung] |
<LABEL>[Darstellung] </LABEL> |
|
[Darstellung] |
<STEXT>Text mit Angaben zur Schriftart </STEXT> |
Zwischen <STEXT> und </STEXT> können Sie Schriftartspezifikationen eingeben. LabVIEW kodiert Schriftartinformationen mit Hilfe des folgenden Formats: <FONT name="font name" size='3' style='BIUSO' color=00ff00>. Schriftartattribute können in beliebiger Reihenfolge aufgeführt werden. Schriftartspezifikationen unterscheiden sich von anderen Elementen, da sie kein End-Tag haben. So können Sie beispielsweise einen Untertitel mit dem Text "FettgedruckteBeschriftung" wie folgt beschreiben:
<LABEL><STEXT><FONT name="times new roman" size=12 style='B'>Bold <FONT style='I'>label</STEXT></LABEL>
Schriftarten können als predef definiert werden, um eine der folgenden vordefinierten Schriftarten festzulegen: Anwendungsschriftart, Systemschriftart oder Dialogschriftart.
Die Tags <GROUPER></GROUPER> umschließen zu einer Gruppe zusammengefasste Frontpanel-Objekte. Diese Tags umschließen auch durch Trennbalken definierte Bildschirmbereiche. Da das Frontpanel grundsätzlich mindestens einen Bildschirmbereich enthält, enthält auch die VI-String-Datei mindestens einen Satz der Tags <GROUPER></GROUPER>. Auch Cluster enthalten Bildschirmbereiche.
In der folgenden Tabelle werden die Tags der Objekte, die Daten enthalten, und die entsprechende Tag-Syntax dargestellt.
| Inhalts-Tag-Typ | Inhalts-Tag-Syntax |
|---|---|
|
[Element] |
<CONTROL [Elementattribute]> [Element-Info] </CONTROL> |
|
[Elementattribute] |
ID=xxx type="Boolean" name="switch" |
|
[Element-Info] |
[Beschreibung] [Tipp] [Teile] [Abschnitt - Privatdaten] [Abschnitt - Standarddaten] [Inhalt] |
|
[Tipp] |
<TIP>Text</TIP> |
|
[Teile] |
<PARTS> [Teil]*</PARTS> |
|
[Teil] |
<PART [Teilattribute]> [Teil-Info] </PART> |
|
[Teilattribute] |
partID=nnn partOrder=nnn |
|
[Teil-Info] |
[Element]|[Beschriftung]|[mehrereBeschriftungen] |
Nachfolgend sehen Sie ein Beispiel einer Ringelement-Beschreibung mit der Beschriftung "Ring" und Optionen Load, Unload, Open und Close.
<CONTROL ID=87 type="Ring" name="RINGcontrol">
<DESC>Ringelement</DESC>
<PARTS>
<PART ID=12 order=0
type="Ringtext"><MLABEL><STRINGS><STRING>Load</STRING><STRING>Unload</STRING><STRING>Open</STRING><STRING>Close</STRING></STRINGS></MLABEL></PART>
<PART ID=82 order=0 type="Untertitel"><LABEL><STEXT><FONT color=FF0033 size=12>Ring</STEXT></LABEL></PART>
</PARTS>
</CONTROL>
LabVIEW verwendet das MLABEL-Tag (Mehrfachbeschriftung) oben, um den Options-String am Ringbedienelement oder die Strings an booleschen Schaltflächen (ein String für jeden der vier Zustände) zu kennzeichnen. Das folgende Beispiel zeigt eine allgemeine Beschreibung der MLABEL-Tag-Syntax:
[multiLabel]<MLABEL> [mlabel info] </MLABEL>
[mlabel info][font][strings]
In der folgenden Tabelle werden die Tags, die die Standarddaten für Strings, Tabellen, Arrays und Pfade beschreiben sowie die entsprechende Tag-Syntax angezeigt.
| Inhalts-Tag-Typ | Inhalts-Tag-Syntax |
|---|---|
|
[Abschnitt - Standarddaten] |
<DEFAULT> [Standarddaten] </DEFAULT> |
|
[Standarddaten] |
[String-Standard]|[Tabelle - Standard]|[Array-Daten]|[Pfaddaten] |
|
[String-Standard] |
[String]|<SAME_AS_TEXT> |
|
[Tabelle - Standard] |
[Strings] |
|
[Array-Daten] |
<ARRAY nElems=n> [Array-Elementdaten] </ARRAY> |
|
[Array-Elementdaten] |
[Cluster-Daten]|[String-Daten]|[Nicht-String-Daten] |
|
[String-Daten] |
[String] |
|
[Nicht-String-Daten] |
<NON_STRING> |
|
[Cluster-Daten] |
<CLUSTER nElems=n> [Cluster-Elementdaten] </CLUSTER> |
|
[Cluster-Elementdaten] |
[Cluster-Daten]|[String-Daten]|[Nicht-String-Daten]|[Array-Daten]|[Pfaddaten] |
|
[Pfaddaten] |
<PATH type ="absolute"> a<SEP> system </PATH> |
Bei [Array-Daten] muss n [Array-Elementdaten] dem Tag <ARRAY> folgen. Analog muss bei [Cluster-Daten] n [Cluster-Elementdaten] dem Tag <CLUSTER> folgen.
Verwenden Sie bei den Standarddaten des String-Elements [String-Standard] das spezielle Tag <SAME_AS_LABEL>. Dieses Tag kennzeichnet, dass die String-Standarddaten identisch sind mit der Textbeschriftung an der String-Teileliste. Wenn Sie <SAME_AS_LABEL> verwenden, müssen Sie nicht denselben Text für die Beschriftung und die String-Standarddaten separat eingeben.
Bei Standarddaten für das Pfad-Bedienelement [Pfaddaten] kann das Start-Tag <PATH> ein Attribut haben, das den Pfadtyp spezifiziert. Mögliche Attributwerte sind "absolute", "relative", "not-a-path" und "unc". Das Tag <SEP> trennt die Pfadsegmente zwischen den Tags <PATH> und </PATH>. Auf einer Windows-Plattform beispielsweise wird der absolute Pfad c:\windows\temp\temp.txt wie folgt geschrieben:
<PATH type="absolute">c<SEP>windows<SEP>temp<SEP>temp.txt</PATH>
Die folgenden Tabellen zeigen beschreibende Tags für Element-Eigenschaften und die entsprechende Tag-Syntax.
| Inhalts-Tag-Typ | Inhalts-Tag-Syntax |
|---|---|
|
[Abschnitt - Privatdaten] |
<PRIV> [Privatdaten]* </PRIV> |
|
[Privatdaten] |
([Strings]|[Spaltentitel]|[Zeilentitel]|[Zellenschriftart]|[Plots]|[Cursor]|[Pfad - Privatdaten]|[Registerkarte - Privatdaten]) |
|
[Strings] |
<STRINGS> [String]* </STRINGS> |
|
[String] |
<STRING> Text </STRING> |
|
[Spaltentitel |
<COL_HEADER> [String]* </COL_HEADER> |
|
[Zeilentitel] |
<ROW_HEADER> [String]* </ROW_HEADER> |
|
[Zellenschriftart] |
<CELL_FONTS> [Zellenschriftart]* </CELL_FONTS> |
|
[Plots] |
<PLOTS> [String]* </PLOTS> |
|
[Cursor] |
<CURSORS> [String]* </CURSORS> |
|
[Zellenschriftart] |
[Zeilennr. Spaltennr.][Schriftart] |
|
[Schriftart] |
<FONT name="font name" size='x' style='BIUSO' color=000000> |
|
[Pfad - Privatdaten] |
<PROMPT>Text</PROMPT> <MTCH_PTN>TEXT</MTCH_PTN> <STRT_PTH>[Pfaddaten]</STRT_PTH> |
|
[Registerkarte - Privatdaten] |
<PAGE_CAPTIONS>[String]*</PAGE_CAPTIONS> |
|
[Registerkartenseite] |
<PAGE> [Beschreibung] [Tipp] [Objekte] </PAGE> |
| Inhalts-Tag-Typ | Inhalts-Tag-Syntax |
|---|---|
|
[BD-Inhalt] |
<BDCONTENT> [BD-Objekte]</BDCONTENT> |
|
[BD-Objekte] |
([Element]|[Beschriftung]|[Knoten])* |
|
[Knoten] |
<NODE [Knotenattribute]>[Knoten-Info]</NODE> |
|
[Knotenattribute] |
ID=xxx type="Sequence" |
|
[Knoten-Info] |
[Beschreibung] [BD-Element] |
Bearbeiten von VI-Fenstertiteln
Der Fenstertitel von VIs lässt sich ändern, um ihn aussagekräftiger als den Dateinamen des VIs zu formulieren. Dies ist für lokalisierte VIs sehr wichtig. Der VI-Fenstertitel, der nicht den Benennungseinschränkungen des Dateisystems unterliegt, kann lokalisiert werden. Das VI wird dennoch von den VIs erkannt, die es möglicherweise aufrufen, da das aufrufende VI das SubVI mit dem Dateinamen und nicht mit dem Titel aufruft. Lokalisieren Sie den Fenstertitel mit Hilfe der Export/Import-Werkzeuge oder verwenden Sie die Seite Fenstererscheinungsbild des Dialogfelds VI-Einstellungen, um den VI-Fenstertitel während der Bearbeitung eines VIs manuell zu ändern. Sie können den VI-Fenstertitel auch mithilfe des VI-Servers programmatisch ändern.
Dezimalzeichen Punkt und Komma
Standardmäßig wird in LabVIEW das Dezimalzeichen verwendet, das im Betriebssystem eingestellt ist. Hierdurch wird die Anzeige von Zahlen in Bedienelementen und der Betrieb von Funktionen beeinflusst, die zwischen Zahlen und Strings konvertieren. Bei der Übergabe von Zahlen als Zeichenketten an Instrumente oder der Analyse von Instrumenten-Ausgabe-Strings führt dies zu Problemen.
Folgende Funktionen verwenden standardmäßig die Einstellungen des Betriebssystems. Wenn Sie ein Komma benötigen, müssen Sie einen FALSE-Wert mit dem booleschen Eingang Dezimalzeichen des Systems verwenden (+) verbinden.
- Bruch-/Exponential-String nach Zahl
- Zahl nach String (Fließkommadarstellung)
- Zahl nach String (Exponentialdarstellung)
- Zahl nach String (Technische Notation)
Bei Funktionen, die einen Format-String übernehmen, kann der Formatcode %x, bei dem x das Trennzeichen darstellt, verwendet werden, um das Dezimalzeichen für diesen spezifischen Aufruf festzulegen. Zu diesen Funktionen gehören:
- In String formatieren
- In String suchen
- Wert formatieren
- Nach Wert durchsuchen
- Array nach Tabellen-String
- Tabellen-String nach Array
- Tabelle mit Trennzeichen lesen
Klicken Sie auf Werkzeuge»Optionen, wählen Sie Frontpanel aus der Liste Kategorie und aktivieren Sie die Option Lokalen Dezimalpunkt verwenden, um festzulegen, ob die Systemeinstellungen (Standort) oder ein Punkt als Dezimalzeichen verwendet werden soll.
Anzeige von Datum und Zeit als String
Um das Anzeigeformat von Datum und Uhrzeit für Strings festzulegen, sollte standardmäßig die Funktion Datum/Zeit formatieren verwendet werden. LabVIEW liest die Einstellungen des Betriebssystems und zeigt das Datum und die Zeit in dem für den aktuellen Standort angemessenen Format an. LabVIEW gibt die Abkürzungen für Wochentage und Monatsnamen für Systeme, die Abkürzungen nicht unterstützen, wie z. B. Chinesisch und Koreanisch, als numerische Werte aus. Sie können die Anzeige auch durch Wahl der Option Anzeigeformat im Kontextmenü anpassen.