Как насчет этого:
new RandomAccessFile(fileName).setLength(0);
Вы можете сделать это, открыв файл для записи, а затем усечь его содержимое, следующий пример использует NIO:
import static java.nio.file.StandardOpenOption.*;
Path file = ...;
OutputStream out = null;
try {
out = new BufferedOutputStream(file.newOutputStream(TRUNCATE_EXISTING));
} catch (IOException x) {
System.err.println(x);
} finally {
if (out != null) {
out.flush();
out.close();
}
}
Другой способ: усечь только последние 20 байт файла:
import java.io.RandomAccessFile;
RandomAccessFile file = null;
try {
file = new RandomAccessFile ("filename.ext","rw");
// truncate 20 last bytes of filename.ext
file.setLength(file.length()-20);
} catch (IOException x) {
System.err.println(x);
} finally {
if (file != null) file.close();
}
Откройте файл для записи и сохраните его. Он удаляет содержимое файла.