java 产生TXT文件要被安卓解析,产生的文件编码必须是UTF-8 BOM的编码
什么是BOM
BOM(byte-order mark),即字节顺序标记,它是插入到以UTF-8、UTF16或UTF-32编码Unicode文件开头的特殊标记,用来识别Unicode文件的编码类型。对于UTF-8来说,BOM并不是必须的,因为BOM用来标记多字节编码文件的编码类型和字节顺序(big-endian或little-endian)。
public static String androidWriteFile(String desFilePath,String content)
{
String result = "ok";
FileOutputStream fos = null;
OutputStreamWriter writer= null;
try {
char BOM = (char)65279;
File file = new File(desFilePath);
fos = new FileOutputStream(file);
writer = new OutputStreamWriter(fos,"UTF-8");
writer.write(BOM);
writer.write(content);
} catch (Exception e) {
// TODO: handle exception
}
finally{
try {
writer.flush();
writer.close();
fos.close();
} catch (Exception e2) {
e2.printStackTrace();
System.out.print(e2.getMessage());
result = "创建文件失败!";
}
}
return result;
}