Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   String Problem (https://www.delphipraxis.net/163035-string-problem.html)

blaky 13. Sep 2011 15:35

String Problem
 
Code:
var
readline: string;
ATLN: string;

if ((Pos('33', readline) = 1) and (readline[4] = '2')) then // Langrufnummer kommenden Amtsl.
    begin
      readline_identifiziert:= true;
      for I := 11 to 34 do
        begin
          if readline[I] =' ' then break else
             ATLN:=ATLN+readline[I];
        end;
       showmessage(datetostr(date)+' '+timetostr(time)+'-> kommender Anruf von RufNr: ' + ATLN + 'auf Amtsleit.: ' + readline[6] + readline[7] + readline[8] + readline[9] );
    end;
habe bei obigem Code das Problem das mir die showmessage alles was NACH der Variabel ATLN steht nicht mit ausgibt.
Weise ich ATLN etwas statisches zu (also wird nicht durch die for schleife gefüllt) wird mir die gesamte showmessage angezeigt.

stehe grad voll auf dem schlauch

Bernhard Geyer 13. Sep 2011 15:37

AW: String Problem
 
Wie wäre es mit Berücksichtigung der Compilerwarnung das ein nicht initialisierte Variable verwendet wird?

DeddyH 13. Sep 2011 15:38

AW: String Problem
 
Steht vielleicht ein #0 in ATLN?

Luckie 13. Sep 2011 15:39

AW: String Problem
 
Guck dir im Debugger mal die variable an. Steht am Ende eventuell ein #0 oder ein anders Steuerzeichen?
Delphi-Quellcode:
ATLN := Trim(ATLN);

blaky 13. Sep 2011 16:03

AW: String Problem
 
Zitat:

Zitat von Luckie (Beitrag 1124072)
Guck dir im Debugger mal die variable an. Steht am Ende eventuell ein #0 oder ein anders Steuerzeichen?
Delphi-Quellcode:
ATLN := Trim(ATLN);

... shit zu früh gefreut klappt doch nicht

blaky 13. Sep 2011 16:17

AW: String Problem
 
Code:
    if ((Pos('33', readline) = 1) and (readline[4] = '0')) then // Langrufnummer kommenden Tln.
    begin
      readline_identifiziert:= true;
      for I := 11 to 34 do
        begin
          if readline[I] =' ' then break else
             ATLN:=ATLN+readline[I];
        end;
       ATLN := Trim(ATLN);
       showmessage(datetostr(date)+' '+timetostr(time)+'-> kommender Anruf von RufNr: '+ ATLN +' auf Nst: ' + readline[6] + readline[7] + readline[8] + readline[9]);

    end;
selbst mit Trim funktioniert es nicht ??? nach ATLN ist schluss

himitsu 13. Sep 2011 16:32

AW: String Problem
 
Ist readline überhaubt mit genug Zeichen gefüllt?

Schalte mal die Bereichsprüfung an, in den Projektoptionen.

Zitat:

Zitat von Bernhard Geyer (Beitrag 1124068)
Wie wäre es mit Berücksichtigung der Compilerwarnung das ein nicht initialisierte Variable verwendet wird?

Strings sind immer initialisiert, da dieses automatisch geschieht.

Bernhard Geyer 13. Sep 2011 16:38

AW: String Problem
 
Zitat:

Zitat von himitsu (Beitrag 1124089)
Zitat:

Zitat von Bernhard Geyer (Beitrag 1124068)
Wie wäre es mit Berücksichtigung der Compilerwarnung das ein nicht initialisierte Variable verwendet wird?

Strings sind immer initialisiert, da dieses automatisch geschieht.

Stimmt. Habs mit allen anderen lokalen Variablen verwendet :wall:

blaky 13. Sep 2011 16:49

AW: String Problem
 
die readline ist immer genug gefüllt..

habe gerade festgestellt das es sporadisch mit
Code:
Trim(ATLN);
funktioniert aber nur sporadisch

das bringt mich zum Schluss das in der readline außer Leer und Steuerzeichen sporadisch noch andere Zeichen sind

jemand ne Idee wie ich alles außer Zahlen 0-9 rausfiltere?

Klaus01 13. Sep 2011 16:58

AW: String Problem
 
.. da gab es vor kurzem mal einen Thread dazu

Grüße
Klaus


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:09 Uhr.
Seite 1 von 3  1 23      

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