下面的方法將文件大小返回爲2.由於它很長,我假設java計算的文件大小爲2 * 64位。但實際上我保存了32位int + 16位char = 48位。爲什麼Java會執行此轉換?另外,不管是char還是int,Java是否將所有內容都隱式地存儲在文件中?我如何獲得48位的準確大小?使用Java確定和打印文件大小
public static void main(String[] args)
{
File f = new File("C:/sam.txt");
int a= 42;
char c= '.';
try {
try {
f.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
PrintWriter pw = new PrintWriter(f);
pw.write(a);
pw.write(c);
pw.close();
System.out.println("file size:"+f.length());
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
它有助於瞭解如何使用十六進制編輯器來檢查文件中的真實內容。 –