Вы можете использовать класс RandomAccessFile.
RandomAccessFile file = new RandomAccessFile("c:\\data\\file.txt", "rw");
Обратите внимание на второй входной параметр для конструктора: «rw». Это режим, в котором вы хотите открыть файл. «Rw» означает режим чтения/записи. Проверьте JavaDoc для более подробной информации о том, каких режимах вы можете открыть RandomAccessFile в.
двигающихся вокруг RandomAccessFile
Для чтения или записи в определенном месте в RandomAccessFile вы должны сначала поместить указатель файла на место для чтения или записи. Это делается с использованием метода seek(). Текущую позицию указателя файла можно получить, вызвав метод getFilePointer().
Вот простой пример:
RandomAccessFile file = new RandomAccessFile("c:\\data\\file.txt", "rw");
file.seek(200);
long pointer = file.getFilePointer();
file.close();
Чтение из RandomAccessFile
Чтение из RandomAccessFile осуществляется с помощью одного из своих многочисленных чтения() методы. Вот простой пример:
RandomAccessFile file = new RandomAccessFile("c:\\data\\file.txt", "rw");
int aByte = file.read();
file.close();
Метод чтения() считывает байт расположенного в положение в данный момент файла, на который указывает указатель файла в экземпляре RandomAccessFile.
В этом случае JavaDoc забывает упомянуть: метод read() увеличивает указатель файла, указывая на следующий байт в файле после того, как только что прочитанный байт! Это означает, что вы можете продолжить вызов read() без необходимости вручную перемещать указатель файла.
Записи в RandomAccessFile
Записи в RandomAccessFile может быть сделан с помощью одного это его многих записей() методы. Вот простой пример:
RandomAccessFile file = new RandomAccessFile("c:\\data\\file.txt", "rw");
file.write("Hello World".getBytes());
file.close();
Так же, как с помощью метода чтения() метод записи() продвигает указатель файла после вызова. Таким образом, вам не нужно постоянно перемещать указатель файла для записи данных в новое место в файле.
близко()
RandomAccessFile имеет метод Close(), который должен быть вызван, когда вы закончите с использованием экземпляра RandomAccessFile. Вы можете увидеть пример вызовов close() в приведенных выше примерах.
нашли решение? –