Как удалить только содержание файла в Java?

Как я могу удалить содержание файла в Java?

7
задан Raedwald 26 November 2018 в 17:09
поделиться

3 ответа

Как насчет этого:

new RandomAccessFile(fileName).setLength(0);
13
ответ дан 6 December 2019 в 11:47
поделиться

Вы можете сделать это, открыв файл для записи, а затем усечь его содержимое, следующий пример использует 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(); 
} 
1
ответ дан 6 December 2019 в 11:47
поделиться

Откройте файл для записи и сохраните его. Он удаляет содержимое файла.

0
ответ дан 6 December 2019 в 11:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: