YAMLファイルにハッシュマップを保存して読み込む際に問題があります。問題は、私のハッシュマップにクラスが含まれていることです。ここで クラスを含むHashmapを保存するにはどうすればよいですか?
public static Hashmap<String, Clans> playersClan = new Hashmap<>();
は私が解決する助けを必要と
public void onEnable() {
for(String key : this.getConfig().getKeys(true)) {
//Getting a red line while trying to convert the string to a clans object!
Clans value = new Clans(this.getConfig().getString(key));
Clans.playersClan.put(key, value);
}
}
public void onDisable() {
for(Entry<String, Clans> entry : Clans.playersClan.entrySet()){
this.getConfig().set(entry.getKey(), entry.getValue().toString());
}
saveConfig();
}
エラーを保存してyamlfileにロードする私の試みです::だからここ
は私のハッシュマップです
15行目:
toString()
メソッドを使用してクラスクラスのオブジェクトを変換しようとしています。 adyはtoString()
メソッドでは<とすることはできないと言ってくれました。5行目、私はクラスオブジェクトに文字列を変換しようとしていますが。もちろん、オブジェクトの文字列への変換が間違っている場合、これも間違っています。それ以外は、私も赤い線を得ています。
基本的には、文字列をクラスのオブジェクトに、クラスのオブジェクトを文字列に変換するのに役立つ必要があります。
私はbukkit APIを使用しています。
シリアライゼーション(例:http://www.tutorialspoint.com/java/java_serialization.htm)をご覧ください。 – Philipp
はい、私は持っていますが、クラスであるオブジェクトではできませんでした –
"オブジェクトはクラス"とはどういう意味ですか? Javaの 'Class'(https://docs.oracle.com/javase/7/docs/api/java/lang/Class.html)は' Serializable'なので、これをJavaのすべての 'Object'で実行できますあなたがそれをそのように実装すれば(つまり、オブジェクトを直列化できるようにクラスを書く)なら、それは 'Serializable'です。 – Philipp