0

私は現在プログラミングの割り当てを行っていますが、「すべてのデータをデータファイルに保存し、ユーザーPINとアカウント番号の有効性の互換性を確認する必要がある」と書かれています。

残念ながら、私の講師はデータファイルについて教えてくれませんでした。グーグルで検索したところ、2つの異なる答えが見つかりました。

  1. メモ帳(.txt)ファイルにデータを保存する
  2. データをcsvファイルに保存

私の質問はどれがデータファイルですか?また、ユーザーPINを(バッファーリーダーから入力した後に)取得して、両方が正しいかどうかを確認するにはどうすればよいですか?どんな助けでも大歓迎です!!

4

4 に答える 4

2

ウィキペディアから:

データファイルは、コンピュータアプリケーションまたはシステムで使用するためのデータを格納するコンピュータファイルです。

したがって、*.txtファイルと*.csvファイルはどちらもデータファイルです。

*.csvコンマで区切られた値)ファイルは、本質的に、*.txt値を次のように区切るファイルです。,

見つけた2つの方法はほぼ同じですが、csvメソッドを使用する方が簡単です。

于 2010-08-27T11:48:39.547 に答える
2

最も簡単な方法は、Propertiesクラスを使用することです。キーと値のペアを格納し、データをプロパティ ファイルに永続化できます。これが実際の例です:

Properties p = new Properties();
p.setProperty("johndoe.pin", "12345");
p.store(new FileWriter("myfile.properties", "");

そして読む:

Properties p = new Properties();
p.load(new FileReader("myfile.properties", "");

チェックはプロパティ オブジェクトで行われます。

public boolean isValid(String user, String pin) {
  return pin.equals(p.getProperty(user + ".pin"));
}

簡単ですが、もちろん暗号化はありません。ファイルは、PIN を含むプレーン テキストで保存されます。

于 2010-08-27T13:03:11.920 に答える
0

txtでもcsvでも構いません。xml に保存することもできます。ファイル拡張子と混同しないでください。気にする必要があるのは、「それらのデータをどのように保存/ロードできるか」だけです。

  1. .txt で保存することは問題ありませんが、そのデータをロードできることを確認するために、独自の「フォーマット」を定義する必要があるかもしれません。
  2. 独自の「フォーマット」を発明する必要がないため、.csv で保存する場合も便利です。delimiter、encloser などのいくつかの従来の形式に従うだけです。
  3. 別の形式で保存するのも良いです。たとえば、XML. ただし、ここでも、DTD のような XML の従来のフォーマットに従う必要があります。

幸運を

于 2010-08-27T11:57:38.597 に答える
0

シリアル化は、永続ストレージのもう 1 つの方法です。
保存する各データのフィールドを使用して Serializable を実装するクラスを作成できます。次に、クラス全体をファイルに書き出すことができ、後で読み戻すことができます。Serializable インターフェイスは、クラスをある種のバイナリ/16 進数表現に出力すると思います。

JSON ライブラリを使用できるように、標準の Java シリアライゼーションを使用せずにシリアライゼーションを行う方法は他にもあります。

于 2010-08-27T13:08:19.037 に答える