Java でファイルを切り捨てるベストプラクティスの方法は何ですか? たとえば、意図を明確にするための例として、次のダミー関数があります。
void readAndTruncate(File f, List<String> lines)
throws FileNotFoundException {
for (Scanner s = new Scanner(f); s.hasNextLine(); lines.add(s.nextLine())) {}
// truncate f here! how?
}
ファイルはプレースホルダーとして機能しているため、削除できません。
ベストアンサー1
try (FileChannel outChan = new FileOutputStream(f, true).getChannel()) {
outChan.truncate(newSize);
}