1

Delphi 7 を使用してプログラミング タスクを最適に処理する方法についてアドバイスを求めています。

CSV ファイル (サイズが 15kb 未満) から値をすばやく識別できるようにする必要があります。CSV ファイルは次の形式で存在します。

章番号、段落番号、段落内の総単語数

関数に最初の 2 つの値 (つまり、章と段落番号) を提供することによって、この最後の値、つまり単語数を取得できるようにしたいと考えています。

CSV ファイルは数値順にソートされます。つまり、次のようになります。

1,1,30    // first paragraph of first chapter  (line # 1)
1,2,56    // second paragraph of first chapter  (line # 2)
1,3,101
1,4,56
...
2,1,78
2,2,51
...
100,1,87
100,2,101
...
100,23,78    // last paragraph of last chapter (line # 1500)

上記の例では、関数に 2,2 を渡して "51" (整数) を返すようにしたいと思います。

データベース テーブルの使用を避けたい理由: 1) データ量がそれほど大きくない (CSV ファイルで 1500 行、つまり 1500 段落)、2) データベース エンジンの余分なオーバーヘッド (必要なのはデータを書き込むのではなく、データを読み取る)、3) プログラム内からこの関数が呼び出される頻度。

何をお勧めしますか、またその理由は何ですか?

4

5 に答える 5

1

私は二次元配列を作成すると思います

Book[Chapter, Paragraph]

ファイルを読み取って手動で入力します。

そして、関数は自明です:

GetNumberOfPages(Chapter: integer; Paragraph: integer): integer;
begin
  Result := Book[Chapter, Paragraph];
end;

サードパーティのツールをお探しの場合は、JEDi が選択肢になる可能性があります

http://wiki.delphi-jedi.org/wiki/JVCL_Help:TJvCsvDataSet

于 2013-09-02T13:19:40.950 に答える