Difference between revisions of "Widestring/de"

From Free Pascal wiki
Jump to navigationJump to search
Line 2: Line 2:
  
 
Der [[Data type/de|Datentyp]] '''WideString''' hat keine Einschränkung in der Grösse und besteht intern aus einem Array des [[Data type/de|Datentyp]] [[Widechar/de|WideChar]].<br>
 
Der [[Data type/de|Datentyp]] '''WideString''' hat keine Einschränkung in der Grösse und besteht intern aus einem Array des [[Data type/de|Datentyp]] [[Widechar/de|WideChar]].<br>
Eine Typumwandlung von Ansistring nach WideString funktioniert problemlos.<br>
+
Für eine problemlose Typumwandlung von [[Ansistring/de|AnsiString]] zu WideString und von WideString zu [[Ansistring/de|AnsiString]] werden die Funktionen der Unit '''LCLProc''' benötigt.<br>
Eine Typumwandlung von WideString nach Ansistring empfiehlt sich wegen der Probleme mit den deutschen Umlauten nicht.
+
<br>
<br><br>
 
 
Definition eines [[Data field/de|Datenfeldes]] vom [[Data type/de|Datentyp]] AnsiString:<br>
 
Definition eines [[Data field/de|Datenfeldes]] vom [[Data type/de|Datentyp]] AnsiString:<br>
 
<syntaxhighlight>
 
<syntaxhighlight>
 
  Var  
 
  Var  
   w: WideString;  
+
   w: WideString;
 +
  a: AnsiString;  
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Beispiele für die gültige Zuweisung von Werten:
+
Beispiele für die gültige Zuweisung von AnsiString zu WideString und die Zuweisung von Widestring zu Ansistring:
 
<syntaxhighlight>
 
<syntaxhighlight>
   w := '0123ABCabc456';
+
   w := UTF8ToUTF16('0123ABCabc456AöU!,.-');
   w := a + '!"§$%&/()=?';
+
   w := w + UTF8ToUTF16(IntToString(45));
   w := a + IntToString(45);
+
   a := UTF16ToUTF8(w);
 
</syntaxhighlight>
 
</syntaxhighlight>
 
Beispiele für die ungültige Zuweisung von Werten:
 
<syntaxhighlight>
 
  w := True;
 
  w := 4;
 
</syntaxhighlight>
 
Im unteren Beispiel wurde der zu übergebende Wert nicht auf den Datentyp WideString umgewandelt (gecastet).<br>
 
 
<br>
 
<br>
 
<br>
 
<br>
 
--[[User:Olaf|Olaf]] 17:08, 31 August 2012 (UTC)
 
--[[User:Olaf|Olaf]] 17:08, 31 August 2012 (UTC)
 
[[Category:Pascal]]
 
[[Category:Pascal]]

Revision as of 20:09, 1 September 2012

Deutsch (de) English (en) français (fr)

Der Datentyp WideString hat keine Einschränkung in der Grösse und besteht intern aus einem Array des Datentyp WideChar.
Für eine problemlose Typumwandlung von AnsiString zu WideString und von WideString zu AnsiString werden die Funktionen der Unit LCLProc benötigt.

Definition eines Datenfeldes vom Datentyp AnsiString:

 Var 
   w: WideString;
   a: AnsiString;

Beispiele für die gültige Zuweisung von AnsiString zu WideString und die Zuweisung von Widestring zu Ansistring:

   w := UTF8ToUTF16('0123ABCabc456AöU!,.-');
   w := w + UTF8ToUTF16(IntToString(45));
   a := UTF16ToUTF8(w);



--Olaf 17:08, 31 August 2012 (UTC)