Java中关于getBytes在不同系统中的差异
Author
Zhou Renjian
Create@
2006-12-17 01:10
FileOutputStream fos = new FileOutputStream(file);
fos.write(content.getBytes());
fos.close();
在Windows中,会将汉字的所有字节写到文件中。但是在Linux系统(譬如Fedora Core)中会将汉字写成“?”。为了避免这种情况出现,需要保守地为每一次的getBytes调用设置编码,譬如通用的"utf-8",这对于在不同系统间开发很有用处:
FileOutputStream fos = new FileOutputStream(file);
fos.write(content.getBytes("utf-8"));
fos.close();