0

現在、C++ コードを使用してファイルを読み込み (行ごとに並べ替えてから、別の形式 (txt ファイル) に保存します)、行ごとに読み込まれたデータはベクター形式で保存されます。これは、小さなサイズのデータ​​ ファイルの場合は問題ありません。

しかし今、コードをクラッシュさせる大きなデータ ファイルをサポートする必要があります (ベクターを再割り当てして保存するための十分なメモリがありません。データの行数がわからないため、ベクターのサイズを設定できません)。

そのため、大規模なデータを処理するためにコードを再設計する必要があると考えています。今回は、ローカルおよび全体としてデータを操作 (検索、並べ替え、挿入など) できる方法でデータを保存できることを願っています。

ここの誰かが、これをどのように行うべきか、つまり、使用できる言語、データ構造、アルゴリズムなどを正しい方向に向けてくれることを願っています。

4

1 に答える 1

1

メモリ マップト ファイルの使用について調べましたか? ファイルが実際に使用可能なメモリよりも大きい場合でも、アプリケーションのメモリの一部であるかのようにファイルをアドレス指定できます。

それらの詳細については、次のリンクを参照してください。

これらのリンクは、メモリ マップト ファイルのサイズ制限に関する質問に対する以前の回答です。基本的に、ファイルはアドレス空間よりも大きくなる可能性がありますが、一度にすべてを「表示」できない場合があります。

于 2013-07-29T19:27:07.510 に答える