2

Windows に情報を保存するためにどのようなオプションがありますか?

ファイルを作成するか、レジストリを操作することを考えていましたが、ファイルが大きくなりすぎたり、ユーザーがレジストリに簡単にアクセスしたりすると、ファイルを処理するのが面倒になる可能性があります。

最大 100 を超えるエントリがあるとは思わず、次のようになります。

ジョン・バナナ

マーカス・アップル

これでファイルが大きくなりすぎないことはわかっていますが、情報が必要になるたびに解析したくありません。起動時にアプリケーションに情報を読み込むことを考えていましたが、パフォーマンスの問題が発生しませんか? それとも、古いコンピューターを除いては問題にならないほど小さいのでしょうか? 他のオプションはありますか?おそらく、情報を暗号化してレジストリに入れることができますか? レジストリは、このような複数のエントリを配置するのに適していますか?

私がプログラミングをするとき、物事を効率的にすることになると、私は時々少し行き過ぎになることに注意してください。無知ですみません。

4

1 に答える 1

4

Windows に情報を保存するためにどのようなオプションがありますか? 基本的に、3 つの主な戦略があります。

  1. マシンのレジストリを使用し、レジストリ API を使用してアクセスします。
  2. INI ファイル形式のフラット テキスト ファイルを使用し、プライベート プロファイル文字列 API を使用してアクセスします。
  3. 独自の形式のフラット テキスト ファイルを使用し、独自のファイル処理を使用してアクセスします。

これらの戦略のいずれも、データを保存するという目標を達成します。

ただし、Windows プラットフォームでは、答えを得るために考慮する必要がある、より重要な質問があります。

私のアプリケーションのユーザーは、自分のデータを別のマシンに移動して、その別のマシンでアプリケーションを実行したいと思うでしょうか?

上記の質問に対する答えが「はい」の場合、ディスク上のファイルをあるマシンから別のマシンに移動するのは簡単な作業であるため、(2) または (3) が答えになります。一方、マシンからマシンへのレジストリ エントリの移動は、通常のコンピュータ ユーザーにとって簡単なタスクではありません。また、レジストリ データベースをフラット ファイルにエクスポートして再インポートするアプリケーションの関数をコーディングするタスクも同様です。

(2) と (3) の中で、(2) が最も簡単です。なぜなら、Windows にはファイルの内容を取得するための既存の APIがあるからです。(3) 独自のルーチンを作成する必要があります。最終的には、データをどのように構造化するかに依存します。

上記の質問に対する答えが「いいえ」の場合、 (1)、(2)、または (3) のいずれでも問題ありません。ユーザーはデータの保存方法を気にしないからです。

上記の戦略はどれも、他のどの戦略よりもアクセスしやすいものではありません (ユーザーがデータを表示できることを心配している場合)。データが表示されることが心配な場合は、最終的に選択した方法に暗号化を追加してください。

于 2012-07-02T07:45:26.487 に答える