说,我想创建一个大小为1KB的文件,这种方法会起作用吗? 我创建了一个像
这样的java数组char[] s = new char[1024]; //1KByte
使用writer将其写入新创建的* .txt文件,文件的大小是否精确为1Kb?如果没有,我应该如何创建所需大小的文件?
答案 0 :(得分:2)
Java char
类型长度为16位,OutputStreamWriter对象是面向字符串的,而不是面向字节的。根据{{3}},您可以获得一个2 KB的文件,甚至是每个字符具有可变字节数的字符集上不可预测的内容。
最好直接使用output encoding of the writer,使用byte[]
或在循环中使用OutputStream。这样可以保证你得到你想要的东西。