0

操作中に使用するハッシュマップにクラン (クラン クラス オブジェクト) を格納するプラグインを開発しています。hasmap はファイルに保存され (ハッシュマップ全体をシリアル化するのが理想的ですが、それが可能かどうかはわかりません)、後で再読み込みされます。

オブジェクトを保存するにはどうすればよいですか? ハッシュマップ全体をシリアライズできますか? 前もって感謝します; 私はハッシュマップが初めてです:P

4

4 に答える 4

1

はい、HashMapクラスはすでにSerializableインターフェイスを実装しているため、オブジェクトをシリアル化できます。HashMapドキュメントから:

public class HashMap extends AbstractMap 実装 Map、Cloneable、Serializable

同様にシリアル化するには、Clanクラスがインターフェイスを実装する必要があることに注意してください。Serializableクラスをマップのキーとして使用する場合は、メソッドとメソッドClanをオーバーライドする必要があります。hashCodeequals

于 2013-04-01T22:10:15.523 に答える
1

HashMap はシリアライズ可能であるため、もちろん可能です。Clanシリアライズ可能にすることも忘れないでください

ファイルへの書き込み:

FileOutputStream fos = new FileOutputStream("clans");
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(clans);
oos.close();

ファイルから読み取る:

FileInputStream fis = new FileInputStream("clans");
ObjectInputStream ois = new ObjectInputStream(fis);
HashMap<String, Clan> clans = (HashMap) ois.readObject();
ois.close();
于 2013-04-01T22:13:10.437 に答える