私のコードの問題ではないと思うので、状況を説明し、解決できることを願っています。すべてのプレーヤーの名前を含む .txt ファイルを読み取る JApplet があります。プレーヤーを作成すると、このファイルが更新され、php を使用してプレーヤーがリストに追加されます。これは正常に機能し、アプレットをロードするとテキスト ファイルからプレーヤー リストを読み取ることができます。キャラクターを作成すると、php ファイルがテキストを更新します。すぐにファイルします。起動時に正常に読み取った同じ方法を使用して、テキスト ファイルからプレーヤーのリストを再度読み取ろうとすると、更新されたファイルが読み取られません。したがって、基本的には、アプレットが起動時にすべてのファイルを Web サーバーまたは Web ディレクトリから直接読み取るのではなく、すべてのファイルをプリロードするだけで、Web サイトと同じ場所にファイルを保存しているのかどうか疑問に思っています。この場合、ファイルを更新する方法があります。ブラウザでのみ発生します。日食では、変更されたファイルを問題なく読み取ります。
try{
URL url = new URL("http://mywebsitegoeshere.com/playerNames.txt");
BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream()));
String line = "";
while(null != (line = br.readLine())) {
if(line.equals(name + ".txt")){
return true;
}
}
br.close();
}catch(Exception er){}
これは、ファイルをどのように読んでいるかを理解するために何かを削除したコードのほんの一部です。私はphpを使用してファイルを編集していますが、それはうまくいきます。JApplet がファイルをどのように読み取っているかを知る必要があるだけです。最初にファイルを読み取ったときに正常に読み取られ、Web サーバー上の .txt ファイルを変更した後、変更されたファイルではなく元のファイルが読み取られます。ユーザー情報の保存方法を変更する必要があるかもしれません。この小さなゲームでは、これが簡単な方法だと思いました。