代码在第一张图 我创建了一个TestWriter.txt 然后把 0-5000传输进去 打开TestWriter.txt 为什么里面内容会是 第二张图那样??
1 回答
已采纳
onemoo
TA贡献883条经验 获得超454个赞
你期望是什么样呢? 是希望文件中是 1 2 3 ... 这样的字符吗?
write(int) 接受 int 参数的版本会写入该参数值在字符集中所表示的字符。
你代码中传入 write 的5000个整形值被当作字符集中字符的值了,所以基本上你是把 ASCII 字符表及后续扩展字符都输出了个遍...
想要输出 0-4999 这些字符,就想办法将 int 值转为字符。比如你可以这样:
// 先用String来将整型值转为字符 // 再用write的另一个版本 write(String str, int off, int len) 来写入字符 fw.write(String.valueOf(i), 0, String.valueOf(i).length());
添加回答
举报
0/150
提交
取消