2012-02-21 37 views
0

我試圖從FileConnection中將一些數據寫入DataOutputStream。來自FileConnection編碼的J2ME 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(); 

但是,而不是我輸入的文本,我收到一些垃圾在文件中 - 就像有一些編碼問題。
好的,從我可以看到它在文件開始處添加空和0xFF符號。
可能是什麼原因?

回答

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()); 
     } 
    } 
}