[code="java"] FileOutputStream fo = new FileOutputStream("d:/services3.txt");
try {
fo.write("北京".getBytes());
} catch (IOException e1) {
e1.printStackTrace();
}[/code]
问题:FileOutputStream是按字节读入输出流的,假设”北京“对应字节为:1 2 3 4,那么输出文件是怎么知道1和2字节组成”北“,3和4字节组成”京“,而不是输出1,2,3,4字节分别对应的ascll码?
FileOutputStream的write方法
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
拽拽的初行者 2010-04-20 17:36关注[quote]”北京“对应字节为:1 2 3 4,[/quote]
北京对应的 字节 1 2 3 4 都大于 127 ,所以找不到对应ASCII码。
此时 如果设置读取的编码格式是GBK,则按 (12) 去读,而不是1、2分别去读
此时 如果设置读取的编码格式是ISO8859-1,则用?来替代1字节。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报