2016-05-30 9 views
-1

私はDelphi 7でテキストファイルを扱っていますが、テキストファイルの各行でエラーを修正する必要がありますが、どのコードを使用するのかはわかりません。テキストファイルを修正するためのDelphi 7コーディング

リッチエディットでテキストファイルを開いて表示するコードは既にありますが、そこからどこに行くのかはわかりません。

AssignFile(myFile, 'Test.txt'); 
    Reset(myFile); 
    while not Eof(myFile) do 
    begin 
    ReadLn(myFile, text); 
    Richedit.lines.add(myFile); 
    end; 
    CloseFile(myFile); 
end; 
+0

"テキストファイルの各行にエラーがあります。"それは正確にはどういう意味ですか?テキストを編集して再度保存しますか? –

+0

'TMemo'を使うと' LoadFromFile() 'を使ってファイル全体を読むことができ、' SaveToFile() 'を使って編集が終わると内容を保存することができます。 –

+0

'eof(myfile)ではなくReadLineAndFixErrors(myfile);' –

答えて

3

あなたは本当に1970年代のassignfile/resetなどの呼び出しを使用すべきではありません。

RichEdit1.Lines.SaveToFile(Filename); 

あなたは(spreakになるように)注入する前に、テキストの行を調べたい場合は、それらは:

次のコードは動作します:

RichEdit1.Lines.LoadFromFile(Filename); 

あなたがファイルを保存するときコントロールを編集する:

var 
    SL: TStringList; 
    i: integer; 
begin 
    SL:= TStringList.Create; 
    try 
    SL.LoadFromFile(Filename); 
    for i:= 0 to SL.Count -1 do begin 
     //Fixup is a function that reads the line and returns a corrected line. 
     SL[i]:= FixUp(SL[i]); 
    end; 
    RichEdit1.Lines.Assign(SL); 
    finally 
    SL.Free; 
    end; 
end; 

ファイルが純粋なテキストファイルであることを確認する場合は、代わりに。
TRichEditと同様に動作します。

関連する問題