来自FileConnection编码的J2ME DataOutputStream

时间:2012-02-21 20:25:22

标签: file java-me midp dataoutputstream jsr75

我正在尝试从FileConnection将一些数据写入DataOutputStream。

FileConnection con = (FileConnection)Connector.open("file:///C:/file.txt");
   if (!con.exists())
con.create();
DataOutputStream out = con.openDataOutputStream();
out.writeUTF("some text");
out.close();
con.close();

但是我输入的文字不是我输入的文本,而是在文件中收到了一些垃圾 - 就像编码有一些问题一样。
好的,从我所看到的,它在文件的开头添加了null和0xFF符号 可能是什么原因?

1 个答案:

答案 0 :(得分:2)

请查看我在Java ME中编写文件的方法 我认为您在代码中遗漏了Connector.READ_WRITE

private void writeTextFile(String fileName, String text) 
{
    DataOutputStream os = null;
    FileConnection fconn = null;
    try 
    {
        fconn = (FileConnection) Connector.open(fileName, Connector.READ_WRITE);
        if (!fconn.exists())
            fconn.create();
        os = fconn.openDataOutputStream();
        os.write(text.getBytes());
    } catch (IOException e) {
        System.out.println(e.getMessage());
    } finally 
    {
        try 
        {
            if (null != os)
                os.close();
            if (null != fconn)
                fconn.close();
        } catch (IOException e) 
        {
            System.out.println(e.getMessage());
        }
    }
}