Possible Duplicate:
Create file with given size in Java
假设我想创建一个大小为 1KB 的文件,这种方法可行吗? 我创建了一个像
这样的 java 数组char[] s = new char[1024]; //1KByte
并使用写入器将其写入新创建的*.txt文件中,该文件的大小是否精确为1Kb?如果没有,我应该如何创建所需大小的文件?
最佳答案
Java char
类型的长度为 16 位,OutputStreamWriter对象是面向字符串的,而不是面向字节的。取决于output encoding of the writer ,你可以得到例如2 KB 文件,甚至是字符集上不可预测的文件,每个字符的字节数可变。
您最好使用 OutputStream直接使用 byte[]
或使用 write(int)循环中。这将保证您得到您所要求的。
关于java - 创建所需内存大小的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14535199/