Удалить содержимое файла в Java - PullRequest
3 голосов
/ 29 апреля 2009

Я пишу байты в файл temp.fls. После завершения операции я хочу удалить последние 256 байтов из файла temp.fls. Как мне этого добиться? Пожалуйста, помогите мне.

Заранее спасибо.

Ответы [ 2 ]

10 голосов
/ 29 апреля 2009

Использовать RandomAccessFile.setLength() примерно так:

RandomAccessFile f = new RandomAccessFile(yourFile,"rw");
f.setLength(f.length()-256);
0 голосов
/ 16 февраля 2012
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.RandomAccessFile;

public class RandomAccessFileDemo {

    public static void main(String ... args) throws FileNotFoundException, IOException
    {
        File file = new File(<FILE_PATH>);
         System.err.println("MSR:: RandomAccessFileDemo :: the target length is"+file.length());
        RandomAccessFile raf = new RandomAccessFile(file,"rwd");
        raf.seek(file.length()-1); // Set the pointer to the end of the file
        System.err.println("MSR:: RandomAccessFileDemo :: the file pointer is"+raf.getFilePointer());

        raf.setLength(raf.length()-raf.length());

    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...