![]() |
Buchstabe aus einer Zeile auslesen
Hi,
Was muss ich eingeben, dass Delphi aus einer Reihe Zahlen oder Buchstaben nur den was weiss ich 23. nimmt und dann aus der nächten Ziele den dritten usw. und die dann im Edit1 anzeigt??? Also 0035625462645264524654654654546542642 <---die erste 3 0312435053048237285043825435848504854 <---die erste 2 Wäre euch echt dankbar... :) |
Re: Buchstabe aus einer Zeile auslesen
:hi:
Du kannst die Zeichen eines Strings wie die Werte in einem Array ansprechen : String[Stelle]. (Wobei das 1. Zeichen den Index 1 und das Letzte den Index Length(DesStrings) hat) mfg Tobias |
Re: Buchstabe aus einer Zeile auslesen
mal ausprobieren...
Ich hoffe ich hab verstanden was du meinst... Na ma gucken |
Re: Buchstabe aus einer Zeile auslesen
Hi Spike2k3,
ehrlich gesagt ist deine Frage etwas missverständlich. Also bei Strings kannst du folgendes verwenden: Beispiel: S := 'abcdefg' // S wird der String zugewiesen Dabei musst du beachten, dass der erste Buchstaben den Index 1 hat! S[1] liefert den Buchstaben a, S[2] b, S[3] c u. s. w. Wenn du mehrere Zeichen hintereinander ermitteln möchtest, kannst du die Copy Funktion verwenden. Die Copy Funktion kann außerdem auf Arrays angewendet werden. Beispiel:
Delphi-Quellcode:
Daduch werden S die Buchstaben "b" bis "e" zugewiesen. Das Ergebnis ist also "bcde".
S := 'abcdefg'
S := Copy(S, 2, 5); Wenn du die erste Position eines Zeichens in einem String ermitteln möchtest, kannst du das mit AnsiPos tun. Mit LastDelimiter kannst du ein bestimmtes Zeichen am Ende eines Strings ermitteln. Wie Copy, AnsiPos und LastDelimiter funktinieren steht ausführlich in der Delphi Hilfe. Ich hoffe, dass ich dir helfen konnte. |
Re: Buchstabe aus einer Zeile auslesen
ICh möchte gerne
den 5 und 10 buchstaben aus einer Reihe auslesen und aus der nächsten Reieh wieder andere... und die dann in nem Memo anzeigen, nacheinander verständlicher? |
Re: Buchstabe aus einer Zeile auslesen
Es kommt auf das Steuerelement oder Objekt an.
Bei TMemo, TColorMemo, TRichEdit, TStringList, TStrings, u.s.w kann auf die einzelnen Zeilen mit der gleichen Methode zugegriffen werden. Dabei beginnt der Index allerdings mit 0 (NULL). Memo1.Lines[0] gibt die erste Zeile in Memo1 zurück. Memo1.Lines[0][5] gibt den 5. Buchstaben in der ersten Zeile von Memo1 zurück. |
Re: Buchstabe aus einer Zeile auslesen
hey..in gewisser Weise klappts ;)
hier is ma Quelltext soweit:
Delphi-Quellcode:
Soweit sogut, doch möchte ich das aus der ersten Zeile nur die 4. Zahl und dann aus der zweiten Zeile die 3. Zahl ausgewählt wird..und die dann hintereinander, zb. als AB oder 43 oder so angezeigt werden (im Memo)...
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; Button2: TButton; Memo1: TMemo; Button3: TButton; Memo2: TMemo; Edit1: TEdit; procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; DateiName,s : string; implementation {$R *.dfm} procedure TForm1.Button3Click(Sender: TObject); begin DateiName:=Edit1.Text; //Die Datei mit dem Code wird eingegeben end; procedure TForm1.Button2Click(Sender: TObject); begin Memo1.lines.loadfromfile(DateiName); //Der Inhalt der txt wird eingelesen S:=Memo1.Lines.text; //und wird mit S gleichgesetzt S := Copy(S, 2, 5); //die Zahlen 2-5 werden ausgewählt Memo1.text:= S; // und im Memo 1 angezeigt end; end. |
Re: Buchstabe aus einer Zeile auslesen
Ganz einfach:
Delphi-Quellcode:
Memo1.Lines.Add(Memo1.Lines[0][4] + Memo1.Lines[1][3]);
|
Re: Buchstabe aus einer Zeile auslesen
Und wenn ich gerne die Zeilen der DAtei einlesen möchte, also direkt...?
Means: Datei einlesen und nur Zeile 1, Buchstabe 4 etc. im Memo eins ausgeben...? |
Re: Buchstabe aus einer Zeile auslesen
Vorsicht! Das wird sehr sehr schwierig!
Versuche lieber die Datei in eine Stringliste zu laden:
Delphi-Quellcode:
Du kannst aber auch direkt auf die Datei zugreifen. Dazu muss du allerdings die Windows API Funktionen verwerden, um die einzelnen Zeilen in einer Schleife abzuarbeiten (kann sehr sehr kompliziert werden!).
var mList: TStringList;
begin mList := TStringList.Create; try mList.LoadFromFile('Dateiname'); // Anschließend kannst du in mList auf die Zeilen zugreifen. // Beispiel: mList[0]; // Liefert die erste Zeile zurück mList[0][4]; // Liefert den 4. Buchstaben in der ersten Zeile zurück finally mList.Free; end; end; Also es ist schon spät ich mach dann mal Schluss. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:20 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