![]() |
String in Char konvertieren
Hallo,
ich habe ein Problem mit der Umwandlung von Zeichen aus einem String in eine Char Variable.
Delphi-Quellcode:
Woran kann das liegen? Ist mit BDS 2006 kompiliert unter Win 7 64Bit.
var
strZeichen: String; caZ: Char; begin strZeichen:= copy(strNormalText,i,1); caZ:= strZeichen[1]; // hier kommt eine Fehlermeldung. Bis bald Chemiker |
Re: String in Char konvertieren
Mit einem Typecast könnte es klappen:
Delphi-Quellcode:
var
strZeichen: String; caZ: Char; begin strZeichen:= copy(strNormalText,i,1); caZ:= Char(strZeichen[1]); // hier kommt eine Fehlermeldung. |
Re: String in Char konvertieren
Was ist i? Bist du sicher, dass i initialisiert ist? Eine andere Möglichkeit ist, dass strNormalText leer ist.
Edit: Ich würd den Code einfach mal mit dem Debugger durchsteppen, dabei immer auf die werte der Variablen achten. |
Re: String in Char konvertieren
Warum nicht gleich:
Delphi-Quellcode:
Und welcher Fehler kommt? Eigentlich sollte das ohne Fehler compilieren. Und wann kommt der Fehler? beim compilieren oder beim ausführen?
strZeichen:= strZeichen[i];
|
Re: String in Char konvertieren
Hallo Daniel G,
hatte ich schon probiert, funktioniert auch nicht. Bis bald Chemiker |
Re: String in Char konvertieren
Hast du ganz sicher auch genug Zeichen im String gespeichert? Bei mir klappt dein Code wunderbar...(delphi 2005)
|
Re: String in Char konvertieren
DAnn wäre in der Tat mal die Fehlermeldung interessant zu wissen. ;)
|
Re: String in Char konvertieren
Vielleicht klappt
Zeichen:= copy(strZeichen(1,1); |
Re: String in Char konvertieren
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo SirThornberry,
beim Ausführen. Bis bald Chemiker |
Re: String in Char konvertieren
Zitat:
:roll: Chemiker, probier das mal aus:
Delphi-Quellcode:
Ein paar Hinweise:
var
i: Integer; strNormalText, strZeichen: String; caZ: Char; begin i := 1; strNormalText := 'ABCD'; strZeichen:= copy(strNormalText,i,1); caZ:= strZeichen[1]; // hier kommt eine Fehlermeldung. ShowMessage( strNormalText + '[' + IntToStr(i) + '] = ' + caZ ); - Die Indizierung bei Strings fängt bei 1 an und nicht bei 0; - i könnte bei dir nicht initialisiert / außerhalb des Wertebereiches (i < 1 oder i > Length(Str)) sein - strZeichen könnte nach copy leer sein (Grund: voriger Hinweis ODER auch strNormalText ist leer) MfG |
Re: String in Char konvertieren
Hallo,
danke an alle ist gelöst. Habe jetzt eine Stunde daran rumgefummelt. Problem ist gewesen das ich eine Fehlerhafte Anweisung im Editor hatte, außerhalb des Sichtbereiches. Bis bald Chemiker |
Re: String in Char konvertieren
... dann zeige doch 'mal jetzt bitte Deine Lösung
danke Wolfgang |
Re: String in Char konvertieren
Die bisherigen Dinge waren doch die Lösung laut seiner Aussage. Denn das Problem trat durch eine Anweisung außerhalb des gezeigten/sichtbaren Bereiches auf.
|
Re: String in Char konvertieren
verpennt :)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:16 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz