ホーム
Top.Mail.Ru Yandeks.Metrika
フォーラム: "Main";
現在のアーカイブ:2002.01.08;
ダウンロード:[xml.tar.bz2];

ダウン

大きなファイルの読み方??? 似ている枝を探す


Art   (2001-12-14 13:09) [0]

大きなファイルを完全に読む必要があります!!!



softland   (2001-12-14 13:15) [1]

ファイルはRAMよりもかなり大きいのですか?



Vitaly   (2001-12-14 13:19) [2]

だから何



Art   (2001-12-14 13:20) [3]

はい、255バイトはもうありません、そして、多くは通常の現在の行に置かれます!!!



MBo   (2001-12-14 13:37) [4]

質問を指定します。 どのようなファイルですか?
Delphiのstring = 4 Megの前のansistring({$ H-}に値しない場合)



Art   (2001-12-14 14:06) [5]

さて、サイズが100kbに達するファイルがあります。すべて読む必要があります!!



gek   (2001-12-14 14:08) [6]

>>アート
どこで読むべきか分からないのですか?
100 kbはナンセンスです



NickBat   (2001-12-14 14:10) [7]

それならどこへ行く? そして、あなたはどのように読みますか?



Dimka Maslov   (2001-12-14 14:11) [8]

メモリにバッファを割り当てて、そこに情報を読み込みます。 問題ありません。



MBo   (2001-12-14 14:11) [9]

さらに別の質問を指定
1行で読み取る必要があるテキストファイルがある場合は、たとえばFileStream
または、Stringlist.loadfromfileは適切ですか?



Polevi   (2001-12-14 16:02) [10]

プロシージャReadAnyFile(FileName:string);
VAR
fHandle、fmHandle:THANDLE;
fBuffer:ポインター。
FileSize、FileSizeHigh:Cardinal;
始まる
fHandle:= CreateFile(PChar(FileName)、GENERIC_READまたはGENERIC_WRITE、
0、nil、OPEN_EXISTING、FILE_ATTRIBUTE_NORMAL、0);
fHandle <> INVALID_HANDLE_VALUEの場合
始まる
FileSize:= GetFileSize(fHandle、@ FileSizeHigh);
FileSizeHigh = 0の場合
始まる
fmHandle:= CreateFileMapping(fHandle、nil、PAGE_READWRITE、0,0、nil);
if(fmHandle <> 0)および(GetLastError <> ERROR_ALREADY_EXISTS)then
始まる
fBuffer:= MapViewOfFile(fmHandle、FILE_MAP_WRITE、0,0,0);
fBuffer <> nilの場合
始まる
//ここでは、fBufferのメモリ領域と同様に、ファイルで動作します
終わり
CloseHandle(fmHandle);
終わり
終わり
CloseHandle(fHandle);
終わり
終わり



DK   (2001-12-15 03:58) [11]

ファイルがテキストの場合、これを非常に簡単に行うことができます。
1。 TStringListを作成します
2。 その後、そのloadfromfile
3。 すべてを考慮します:)



Anatoly Podgoretsky   (2001-12-15 12:11) [12]

MBo©(14.12.01 13:37)
長さ(S)= INTEGER

DK©(15.12.01 03:58)
質問が普通に聞かれるまで待って、雨が降らなければ理解することができるようにします。



Art   (2001-12-15 17:34) [13]

私は通常、質問をします:タスクはファイルを変数(完全に、ファイル全体)に読み込むことです、ファイルはプレーンテキストファイルであり、ファイルサイズは4メガバイト以上かもしれません(今は大丈夫ですか?)



Anatoly Podgoretsky   (2001-12-15 18:18) [14]

BlockRead(F、S、N)は多くのメソッドの1つです



DK   (2001-12-16 02:11) [15]

まあ、私は言う:DK©(15.12.01 03:58)
16 megsを個人的にダウンロードしました(これは制限ではありません)。
すばやくロードして、文字列を簡単に操作します。



ページ: 1 全枝

フォーラム: "Main";
現在のアーカイブ:2002.01.08;
ダウンロード:[xml.tar.bz2];

2階





メモリ:0.58 MB
時間:0.026 c
14-22327
フリズ
2001-11-05 15:39
2002.01.08
明日の休日の翌日?


7-22441
ユリシーズ
2001-09-19 20:31
2002.01.08
Delphi 5 EntはWin2k Proの下で通常インストールされていません


1-22244
Socol
2001-12-15 15:42
2002.01.08
ファイルのアップロード!


6-22275
モスカワー
2001-10-08 12:43
2002.01.08
TNMFTP経由でLinuxサーバーにchmodコマンドを送信するにはどうすればよいですか?


4-22466
アート
2001-10-31 15:21
2002.01.08
それでも、マウスの移動面をフォームの境界に制限する方法は?





アフリカーンス語 アルバニア語 アラビア語 アルメニア語 アゼルバイジャン語 バスク ベラルーシ ブルガリア語 カタルーニャ語 中国語(簡体字) 中国語(繁体字) クロアチア語 チェコ語 デンマーク語 オランダ語 英語 エストニア語 フィリピン語 フィンランド語 フランス語
ガリシア語 ジョージアン ドイツ語 ギリシャ語 ハイチ語 ヘブライ語 ヒンディー語 ハンガリー語 アイスランド語 インドネシア語 アイリッシュ イタリア語 日本語 韓国語 ラトビア語 リトアニア マケドニア語 マレー語 マルタ語 ノルウェー語
ペルシア語 ポーランド語 ポルトガル語 ルーマニア語 ロシア語 セルビア スロバキア語 スロベニア語 スペイン語 スワヒリ語 スウェーデン語 タイ語 トルコ語 ウクライナ語 ウルドゥー語 ベトナム語 ウェールズ語 イディッシュ語 ベンガル語 ボスニア語
セブアノ語 エスペラント グジャラート語 ハウサ語 モン族 イボ ジャワ語 カンナダ語 クメール語 ラオ語 ラテン マオリ語 マラーティー語 モンゴル語 ネパール語 パンジャブ語 ソマリ タミル語 テルグ語 ヨルバ語
ズールー語
Английский Французский Немецкий Итальянский ポルトガル語 Русский Испанский