お知らせ

電子会議

ライブラリ

パレット

Delphi FAQ検索

Delphi FAQ一覧

サンプル蔵





FDelphi FAQ
16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル

"RE:メモリマップトファイル(ストリーム)"

この発言は
#00020 ぜえた さんのメモリマップトファイル(ストリーム)
に対するコメントです

TFileMappingMemoryStream の使用例 'C:\Test.txt' と Memo1 の行数を数えます。 TFileMappingMemoryStream と TMemoryStream の違いにも注意。 --------------------------------------------------------------------------- type TForm1 = class(TForm) Memo1: TMemo; Button1: TButton; Button2: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); end; var Form1: TForm1; implementation const FileName = 'C:\Test.txt'; function LineCount(S: PChar): Integer; begin Result := 1; while S^ <> #0 do begin if S^ = #13 then Inc(Result); Inc(S); end; end; {$R *.DFM} procedure TForm1.Button1Click(Sender: TObject); var Stream: TMemoryStream; begin Stream := TFileMappingMemoryStream.Create(FileName, fmOpenRead); try Label1.Caption := IntToStr(LineCount(PChar(Stream.Memory))); finally Stream.Free; end; end; procedure TForm1.Button2Click(Sender: TObject); var Stream: TMemoryStream; begin Stream := TMemoryStream.Create; try Stream.LoadFromFile(FileName); Label1.Caption := IntToStr(LineCount(PChar(Stream.Memory))); finally Stream.Free; end; end; procedure TForm1.Button3Click(Sender: TObject); begin Label1.Caption := IntToStr(LineCount(PChar(Memo1.Lines.Text))); end; --------------------------------------------------------------------------- ぜえた (QZC05100) Original document by ぜえた 氏 ID:(QZC05100)



ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。

Copyright 1996-2002 Delphi Users' Forum