AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

string to UTF 16

Ein Thema von Master_Jochen · begonnen am 25. Apr 2009 · letzter Beitrag vom 26. Apr 2009
Antwort Antwort
Seite 1 von 2  1 2      
Master_Jochen

Registriert seit: 22. Aug 2008
12 Beiträge
 
#1

string to UTF 16

  Alt 25. Apr 2009, 19:15
Hallo liebe Profies.
Erstmal sorry ich bin ein Delphi anfänger und habe ein problem. Ich möchte einen String ins UTF-16 LE Format convertieren habe aber über googel und auch hier nichts gefunden. Außer dieser funktion AnsiToUtf8(); aber AnsiToUtf16(); gibt es nicht. Dann habe ich Beispiele gefunden zum laden und speichern von UTF-16 aber eben nicht zum convertieren.

Zu meinem project: Ich möchte log files auslesen und neu beschreiben das auslesen und umwandeln von utf 16 geht auch habe dazu einen code fetzen gefunden aber das game can den logfiele nur auch wieder lesen wenn ich meinen string auch ins UTF-16 format bringe.

Ok nun habe ich eine ganz große bitte kann mir jemand ne function schreiben oder zeigen mit der ich einen string in utf 16 formatieren kann?

Ich bedanke mich schonmal hier fürs lesen meines problems und für eventuelle antworten oder lösungsansätze.
mfg Jochen
Ich bin ein noob sorry.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: string to UTF 16

  Alt 25. Apr 2009, 19:50
Welche Delphiversion?
Markus Kinzler
  Mit Zitat antworten Zitat
Master_Jochen

Registriert seit: 22. Aug 2008
12 Beiträge
 
#3

Re: string to UTF 16

  Alt 25. Apr 2009, 20:04
Delphi 7
Ich bin ein noob sorry.
  Mit Zitat antworten Zitat
samso

Registriert seit: 29. Mär 2009
439 Beiträge
 
#4

Re: string to UTF 16

  Alt 26. Apr 2009, 08:38
Probiere mal:

Delphi-Quellcode:
function AnsiToUtf16(const s: AnsiString): WideString;
begin
  Result := s;
end;
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.580 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: string to UTF 16

  Alt 26. Apr 2009, 08:41
Es müsste eine Funktion StringToWideChar oder so ähnlich geben.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.195 Beiträge
 
Delphi 10.4 Sydney
 
#6

Re: string to UTF 16

  Alt 26. Apr 2009, 10:26
Solagen du dich im Bereich Unicode 3.0 befindest kannst (und das ist eigentlich für real noch verwendete Sprachen ziemlich ausreichend), kannst du deinen AnsiString einfach einem Widestring zuweisen. Ab D2009 oder mit hilfe von Komponenten wie Elpack oder TNTWare oder JCL kannst du diesen String über eine Unicode-Stringliste in eine Textdatei speichern.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Master_Jochen

Registriert seit: 22. Aug 2008
12 Beiträge
 
#7

Re: string to UTF 16

  Alt 26. Apr 2009, 12:15
Danke für eure tips.
Ich habe jetzt mal

Delphi-Quellcode:
function AnsiToUtf16(const s: AnsiString): WideString;
begin
  Result := s;
end;
versucht , also sprich meinen string damit umgewandelt dann in ein memo geschrieben und dann das memo gespeichert aber das geht scheinbar nicht.
das memo scheint alles wieder umzukehren da ein echtes utf 16 so wie ich es geladen hatte nicht im memo angezeigt werden konnte aber dieses sehr wohl. mmh ich muss do wohl noch weiter rumprobieren,
Ich bin ein noob sorry.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: string to UTF 16

  Alt 26. Apr 2009, 12:19
Ein Memo vor D2009 kann nur einen AnsiString aufnehmen
Markus Kinzler
  Mit Zitat antworten Zitat
mjustin

Registriert seit: 14. Apr 2008
3.006 Beiträge
 
Delphi 2009 Professional
 
#9

Re: string to UTF 16

  Alt 26. Apr 2009, 13:38
UTF-16 Konvertierungsfunktionen sind eventuell hier enthalten:

Fundamentals 3 - Unicode units
http://fundementals.sourceforge.net/unicode.html

oder

OpenXML
http://www.philo.de/xml/downloads.shtml
Michael Justin
habarisoft.com
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
 
Delphi 12 Athens
 
#10

Re: string to UTF 16

  Alt 26. Apr 2009, 14:06
Wie schon gesagt, wenn du ein nur in und von ANSI konvertierst, dann entspricht der Unicode-String der UTF16-Darstellung,
da nur Unicodezeichen zwischen #$8000 und #$fffd in unicode und utf16 eine andere Darstellung besitzen.

Delphi-Quellcode:
function AnsiToUtf16(const s: AnsiString): WideString;
//var i: Integer;
begin
  Result := s;
  //for i := 1 to Length(Result) do
  // if Result[i] > #$7fff then
  // raise Exception.Create('is not an utf8 string');
end;

function Utf16ToAnsi(const s: WideString): AnsiString;
var i: Integer;
begin
  for i := 1 to Length(s) do
    if s[i] > #$7fff then s[i] := '?';
  Result := s;
end;
(wenn du unbedingt willst, dann kannst du ja gern die auskommentierte Prüfung aktivieren, aber diese wird eh nicht's melden)
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz