AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

TStringList nach Widestring konvertieren

Ein Thema von KarllerntDelphi · begonnen am 2. Sep 2023 · letzter Beitrag vom 5. Sep 2023
Antwort Antwort
KarllerntDelphi

Registriert seit: 21. Okt 2020
Ort: Grünstadt
20 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#1

TStringList nach Widestring konvertieren

  Alt 2. Sep 2023, 16:24
Hallo,

ich habe eine Bibliothek gefunden, mit der ich mails versenden kann.
Nun erwartet die Bibliothek die Übergabe des Mailkörpers (Body), der mehrzeilig ist,
Die Übergabe der Zeilen als "Widestring" und ich habe keine Ahnung wie ich aus der TStringList einen
Widestring mache.
Für die Konvertierung der Strings (Mailadresse etc) habe ich in der Jedibibliothek über die
Funktion "Utf8toWideString" eine Möglichkeit gefunden.

Ich bitte um Hilfe.

Danke
Karl
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

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

AW: TStringList nach Widestring konvertieren

  Alt 2. Sep 2023, 16:28
Delphi 10.2?

TStringList = viele Strings
String entspricht UnicodeString (seit Delphi 2009)
UnicodeString = viele WideChar's
WideString = viele WideChar's
und Delphi konvertiert das verlustlos automatisch hin und her.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PosEx im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
KarllerntDelphi

Registriert seit: 21. Okt 2020
Ort: Grünstadt
20 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#3

AW: TStringList nach Widestring konvertieren

  Alt 2. Sep 2023, 16:41
Danke.

ja, 10.2

Nur, jetzt bin ich genauso ratlos wie vorher oder heisst das, ich kann das einfach
durch Zuweisung

var
st : string;
stl : TStringList;
wc : widechar;

wc := st;
oder
wc := stl;

in meiner Delphi-version erledigen. Ich glaube nicht an Wunder
Karl
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

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

AW: TStringList nach Widestring konvertieren

  Alt 2. Sep 2023, 16:44
String ist praktisch sowas wie ein WideString, da ist einfach nichts zu beachten¹ ... das Interne macht Delphi automatisch.

¹) Außer, wenn es um VAR-Parameter geht.

Delphi-Quellcode:
var
  S: String;
  W: WideString;
  L: STringList;

W := S;
W := L[1];
W := L.Text;
...
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PosEx im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
KarllerntDelphi

Registriert seit: 21. Okt 2020
Ort: Grünstadt
20 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#5

AW: TStringList nach Widestring konvertieren

  Alt 2. Sep 2023, 16:48
Ich habe jetzt dem Widestring die TStringist zugewiesen, bekomme aber eine Fehlermeldung

[dcc32 Fehler] SAPTMain.pas(550): E2010 Inkompatible Typen: 'WideString' und 'TStringList'

????

Ich dachte das geht so einfach.
Karl
  Mit Zitat antworten Zitat
KarllerntDelphi

Registriert seit: 21. Okt 2020
Ort: Grünstadt
20 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#6

AW: TStringList nach Widestring konvertieren

  Alt 2. Sep 2023, 16:53
Sorry, hab nicht richtig gelesen....
Karl
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.101 Beiträge
 
Delphi 12 Athens
 
#7

AW: TStringList nach Widestring konvertieren

  Alt 2. Sep 2023, 16:55
Was passiert denn bei ziel := myStringList.Text; ?

Text proportional gibt die Liste als einen Text zurück, mit Delimiter wie CrLf.
  Mit Zitat antworten Zitat
Dennis07

Registriert seit: 19. Sep 2011
Ort: Deutschland
485 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: TStringList nach Widestring konvertieren

  Alt 4. Sep 2023, 20:45
Was passiert denn bei ziel := myStringList.Text; ?

Text proportional gibt die Liste als einen Text zurück, mit Delimiter wie CrLf.
Hast du dir doch damit selbst beantwortet, oder nicht?

String ist praktisch sowas wie ein WideString, da ist einfach nichts zu beachten¹ ... das Interne macht Delphi automatisch.

¹) Außer, wenn es um VAR-Parameter geht.
Joa, quasi. Da gibt es schon einige gravierende Unterschiede, die es zu beachten gilt. Im besonderen, dass du Zeichen in einem WideString nicht einfach über
Code:
s[i]
sicher indizieren kannst. Auch hat WideString keine eigene Referenzzählung, was bedeutet, dass wenn der zugewiesene Wert freigegeben wird, der WideString nicht mehr verfügbar ist (ich denke, das meintest du mit dem var-Parameter).
Dennis
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.101 Beiträge
 
Delphi 12 Athens
 
#9

AW: TStringList nach Widestring konvertieren

  Alt 5. Sep 2023, 11:43
Was passiert denn bei ziel := myStringList.Text; ?

Text proportional gibt die Liste als einen Text zurück, mit Delimiter wie CrLf.
Hast du dir doch damit selbst beantwortet, oder nicht?
So what ??!!
Sagst Du damit also, dass dies bei KarllerntDelphi dann alles funktioniert und er seine Aufgabe, siehe unten, gelöst hat ?

Zitat:
Nun erwartet die Bibliothek die Übergabe des Mailkörpers (Body), der mehrzeilig ist,
Die Übergabe der Zeilen als "Widestring" und ich habe keine Ahnung wie ich aus der TStringList einen
Widestring mache.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 18:15 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