お知らせ

電子会議

ライブラリ

FDelphi サイト全文検索

Delphi FAQ一覧

サンプル蔵



FDelphi FAQ
15番会議室「FAQ編纂委員会」に寄せられた「よくある質問の答え」

[Q]
テキストファイルをシークしたいのですが、Seek手続きやFilePos関数は TextFileには使えません。どうすればいいのでしょうか?

[A]

テキストファイル変数をTTextRecにキャストすれば可能です。
TTextRecについては、言語リファレンスのファイル型の項を参照してください。

以下がテキストファイル用のSeek手続きFilePos関数の例です。

procedure TextSeek(var F: TextFile; N: LongInt);
begin
  with TTextRec(F) do
  begin
    BufPos := 0; BufEnd := 0;
    FileSeek(Handle, N, 0)
  end;
end;

function TextFilePos(var F: TextFile): LongInt;
begin
  with TTextRec(F) do
    case Mode of
      fmOutput:Result:=FileSeek(Handle, 0, 1)+BufPos;
      fmInput :Result:=FileSeek(Handle, 0, 1)-(BufEnd - BufPos)
    end;
end;


ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum FDELPHIに寄せられる質問の中から、よくある質問への回答を FDELPHIのメンバーがまとめたものです。 したがって、これらの回答はボーランド株式会社がサポートする公式のものではなく、掲示されている内容についての問い合わせは受けられない場合があります。

Copyright 1996-1998 Delphi Users' ForumFAQ編纂委員会