0

プロジェクトを終了し、jarファイルにデプロイしました。しかし、私は問題に遭遇しました:

私のプログラムは、Eclipseでファイル(例:data.sav)を自動生成します。このファイルは、最前面のプロジェクトフォルダーに表示されます。デプロイすると、このファイルにはjarファイルが含まれていません。したがって、データなしで開始します。

実行してsthを実行すると、data.savが再び作成されます。しかし、このjarファイルにはこのファイルがありません。古いdata.savを新しいdata.savに上書きしたいと思っているので、これを言います。

だから、jarファイルに「data.sav」を含める方法を教えてください。Eclipseにデプロイするときにこのオプションが表示されません。

これが私がファイルを書きたいコードです:

ObjectOutputStream writer = new ObjectOutputStream(
    new FileOutputStream("data.sav"));

なぜ私がそうするのかをより明確にするために。たとえば、ゲームには、ほとんどの10人のハイスコアを含むリストがあります。最初にプレイするときは、まだ誰もプレイしていません。そのため、このハイスコアリストに何人かの人を書き込んで「ごまかす」必要があります。そのため、私のプログラムには、以前にプレイした「ダミープレーヤー」が含まれています。

4

1 に答える 1

1

Jar は読み取り専用です。Java プログラムが .jar 内のファイルを読み取りおよび書き込みに使用する方法を参照してください。詳細については。

Preferencesおそらく、ハイスコアはAPIを使用してより適切に保存されるでしょう。「情報をどこに置くか」を自動的に処理します。

それがなければ、私はアプリを持っているでしょう。のサブディレクトリにあるファイルに、ダミー スコアとその後の実際のスコアを書き込みますuser.home。これは、標準の Java アプリへの読み取り/書き込みを許可する場所です。

于 2012-04-13T09:01:06.230 に答える