Я прочитал File
класс javadoc. Вот что там написано:Создает ли новый экземпляр файла причину создания пустого файла?
Создает новый экземпляр файла, преобразуя заданную строку пути в абстрактный путь. Если заданная строка является пустой строкой, , то результатом будет пустой абстрактный путь.
ВОПРОС: Это гарантирует, что, если файл не существует, он не будет создавать пустой файл или это зависит от системы? Я попробовал его на RedHat linux, и пустой файл создается только после создания OutputStream
.
Это не очевидно из java для меня.
Экземпляр «Файл» - это всего лишь дескриптор самого файла. Пока вы не пишете в этот файл или не вызываете 'createNewFile()' и т. Д., На нем ничего не создается, если оно еще не существует. Кроме того, выдержка из JavaDoc, которую вы предоставили, ничего не говорит об этой теме, но относится только к именам путей. – Thomas
Подумайте об объекте 'File' как о абстракции имени файла. Никаких действий в файловой системе не будет. – Henry
«Файл» - это обертка для «String», которая предлагает некоторые методы проверки файлов, такие как 'File.exists()', которые бы очень сильно делали, если бы он всегда создавал файл. –