Søge

Tags:    delphi

Hvordan kan man søge i en fil og tælle hvor mange linjer der er som starter
med et ord f.eks. 6 tegn inde.Og filen skal tjekkes uden at være open i
en editor.

MVH.

Computerfreack.

http://www.friserverplads.dk/computerfreack



3 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 5 karma
Sorter efter stemmer Sorter efter dato
Hvordan kan man søge i en fil og tælle hvor mange linjer der er som starter
med et ord f.eks. 6 tegn inde.Og filen skal tjekkes uden at være open i
en editor.

MVH.

Computerfreack.

http://www.friserverplads.dk/computerfreack


Tjaa, dette her virker.

program FileTest;

{$APPTYPE CONSOLE}

uses
SysUtils;

var
myFile : TextFile;
myToken : string;
myFileName : string;
currentLine : string;

begin
myFileName := 'aFile.txt';
myToken := 'myWord';

{Assigning the file myFileName to the handle myFile.}
AssignFile(myFile, myFileName);
{Opening the file for reading.}
Reset(myFile);

{We continue to do the whatever until the whole file has been read.}
While not Eof(myFile) do
begin

{Reading a line from the file.}
ReadLn(myFile, currentLine);

{Strings can be indexed like arrays. And all the usually array functions and procedures can be used on strings.}
if myToken = copy(currentLine, 6, Length(myToken)) Then WriteLn(currentLine);

end;

{Closing the file. This will save the new contents, and free the filehandle myFile.}
CloseFile(myFile);
end.


Mvh.,

Jakob Justsen




Hvordan kan man søge i en fil og tælle hvor mange linjer der er som starter
med et ord f.eks. 6 tegn inde.Og filen skal tjekkes uden at være open i
en editor.


Du kan bruge en TStringList til at indlæse filen med og du kan bruge Pos() til at søge efter ord med. Hvis det bare er et enkelt tegn du vil finde kan du bruge din string som et array og gøre noget i stil med:

<pre>
if DinStringList.Strings[9][6] = 'å' then
ShowMessage('å blev fundet på position 6 i linje 10');
</pre>






Tak for hjælpen begge to men jeg har lige et problem med delphi så jeg kanm ikke få det til
at virke. Noget med "Package not found 'vclShV1D6'" eller noget lignen.

Hvordan kan man søge i en fil og tælle hvor mange linjer der er som starter
med et ord f.eks. 6 tegn inde.Og filen skal tjekkes uden at være open i
en editor.

MVH.

Computerfreack.

http://www.friserverplads.dk/computerfreack





t