2010-11-27 5 views
0

こんにちは皆さん、ここに自分のコードを貼り付けました。 Dialog.informには、プレーヤーのスコアである「長い」値が含まれています。私はそれをファイルに書きたい場合は、byteのintに変換する必要があります。私はこのファイルに書き込まれたジャンクの値を取得しています。BlackBerryのファイルに書き込む

Dialog.inform( "Congrats You scored:+(elapsed/34))"の内容を印刷したいと思います。

  try 
      { 

     FileConnection fc = (FileConnection)Connector.open("file:///SDCard/Rashmi.txt"); 
     // If no exception is thrown, then the URI is valid, but the file may or may not exist. 
     if (!fc.exists()) 
     { 
      fc.create(); // create the file if it doesn't exist 
     } 
     OutputStream outStream = fc.openOutputStream(); 
     int lp=safeLongToInt(elapsed/34); 
     outStream.write("Rashmi".getBytes()); 
     outStream.write(lp); 
     outStream.close(); 
     fc.close(); 

答えて

1

いいえ、スコアをファイルに保存するので、おそらくスコアを文字列として表示できるようにする必要があります。そのファイルを見ると、 "Rashmi"の後に1つの迷惑メールが続くことがわかります。変数lpが正しく印刷されない理由は、数値の文字列値が数値と異なるためです。例えば、2の2進数の値は10ですが、 '2'のASCIIの値は00110010(10進数で50)です。 outStream.write(lp)を呼び出すと、文字列値ではなくlpの数値が出力されます。要するに、数値を文字列にキャストする必要があります。

String text = "Rashmi" + (elapsed/34); 
outStream.write(text.getBytes()); 
+0

THanks again ...ジョナサン...それはnworked :)私は今名前とスコアの両方を表示することができます:) –

関連する問題