写入BlackBerry中的文件

时间:2010-11-27 14:03:57

标签: blackberry

嘿伙计们,我在这里粘贴了我的代码。 Dialog.inform包含一个“长”值,这是玩家的得分。如果我想将它写入文件,我需要将其转换为byte的int。我正在将垃圾值写入文件。任何人都可以帮我解决这个问题吗?我想打印(经过/ 34)

的内容

Dialog.inform(“恭喜你得分:”+(已过去/ 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 个答案:

答案 0 :(得分:1)

好的,既然您要将分数保存到文件中,那么您可能希望该分数可以作为字符串查看。当你查看该文件时,我猜你看到“Rashmi”这个词后跟一个垃圾字符。变量lp未正确打印的原因是因为数字的字符串值与其数值不同。例如,二进制值2为10,而“2”的ASCII值为00110010(或十进制为50)。当你调用outStream.write(lp)时,这是打印lp的数值而不是它的字符串值。简而言之,您需要将数值转换为字符串。尝试这样的事情:

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