ホーム
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.6 MB
時間:0.029 c
1-22002
BFG
2001-12-16 16:24
2002.01.08
グラフ


1-22225
レイスト
2001-12-16 15:56
2002.01.08
リソースをファイルに保存できません


1-22052
avr555
2001-12-17 19:54
2002.01.08
ドラッグ可能なコンポーネント


1-22184
アリゲーター
2001-12-21 09:44
2002.01.08
多分誰か知ってる?


3-21900
ヴァノ
2001-12-07 11:13
2002.01.08
TStringおよびString





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