Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi string in array of Char umwandeln (https://www.delphipraxis.net/29186-string-array-char-umwandeln.html)

zappel 5. Sep 2004 12:01


string in array of Char umwandeln
 
Hi!

Ich habe einen string: 'ABC'+IntToStr(i)+'DEF' den ich aber im Format array of Char benötige.
Wie kann ich das am Elegantesten umformatieren?

Gruß

Aenogym 5. Sep 2004 12:05

Re: string in array of Char umwandeln
 
hi zappel,

verusch einfach mal folgendes ;) :

Delphi-Quellcode:
pchar('ABC'+IntToStr(i)+'DEF');
Aenogym

zappel 5. Sep 2004 12:08

Re: string in array of Char umwandeln
 
Dann kommt aber die Fehlermeldung "Inkompatible Typen: 'Array' und 'PAnsiChar'"!

Nothine 5. Sep 2004 12:18

Re: string in array of Char umwandeln
 
Delphi-Quellcode:
var AoC: array of Char;
    S: string;
begin
  MachIrgendwasMit(S);
  string(AoC) := PChar(S);
so zum beispiel

SirThornberry 5. Sep 2004 12:18

Re: string in array of Char umwandeln
 
dann bau dir einfach eine schleife. bei mir funktioniert der direkte cast(
Delphi-Quellcode:
var L: PChar;
begin
  L := PChar('ABC'+IntToStr(5)+'DEF');
) übrigens ohne probleme

zappel 6. Sep 2004 09:14

Re: string in array of Char umwandeln
 
Nein, das hilft auch nicht. Ich brauche den string in einem array of Char!

Delphi-Quellcode:
procedure xy;
var
  NID: TNotifyIconData;
  k: integer;
  s: string;
  t: PChar;
  AoC: array[1..30] of Char;
begin
  s:='ABC'+IntToStr(k)+'DEF';
  NID.szTip:=s; // Fehlermeldung: "Inkompatible Typen: 'Array' und 'String'"
  t:=PChar('ABC'+IntToStr(k)+'DEF');
  NID.szTip:=t; // Fehlermeldung: "Inkompatible Typen: 'Array' und 'PAnsiChar'"
end;

himitsu 6. Sep 2004 09:42

Re: string in array of Char umwandeln
 
es gibt auch irgendwie 'ne Möglichkeit die Daten direkt zu kopieren, aber mir fällt das nichtmehr ein (vergeß das ständig) -.-

aber notfalls kannst du das ja auch selber machen:
Delphi-Quellcode:
{s in AoC kopieren}
For i := 1 to 30 do
  If i < Length(s) Then AoC[i] := s[i] Else AoC[i] := #00;

mytar 6. Sep 2004 09:43

Re: string in array of Char umwandeln
 
Ich denke du findest in der OH sicherlich eine Standardmethode die dir das macht.
Vielleicht in SysUtils oder StrUtils. Erstmal nachschauen, sonst
musst du das über eine Schleife machen (die Std-Methode macht das sicherlich auch
auf diese Weise).

greetz

Sprint 6. Sep 2004 09:43

Re: string in array of Char umwandeln
 
Zitat:

Zitat von zappel
Wie kann ich das am Elegantesten umformatieren?

Unbedingt die Hilfe zu StrCopy und StrLCopy lesen!!!
Delphi-Quellcode:
var
  MyCharArry: array[0..30] of Char;
  MyStr: String;
begin

  MyStr := 'Hello World!';

  StrCopy(MyCharArry, PChar(MyStr));
  // oder
  StrLCopy(MyCharArry, PChar(MyStr), Length(MyCharArry));

end;

zappel 6. Sep 2004 09:48

Re: string in array of Char umwandeln
 
Danke! Hab's gerade gefunden! Mit StrCopy() hat's funktioniert!


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:29 Uhr.
Seite 1 von 2  1 2      

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