Описание тега filechannel

В Java FileChannel - это абстрактный класс для чтения, записи, сопоставления и управления файлом.
1 ответ

FileChannel#force и буферизация

Я хотел бы прояснить ситуацию и провести некоторые параллели между FileOutputStream и FileChannel прямо сейчас. Поэтому, во-первых, кажется, что наиболее эффективный способ написания файла со стандартным Java io - это использование FileOutputStream,…
20 янв '11 в 01:13
2 ответа

Java FileChannel больше, чем его содержимое

Я создаю fileChannel для выполнения записи в карту памяти. Этот fileChannel имеет размер 100 байт. Я пишу только 80 байтов. Поэтому, когда я позже прочитаю этот файл, он добавляет 5 "0" к и. Есть ли способ установить размер или получить размер, кото…
02 янв '15 в 17:46
1 ответ

Вызывает ли RandomAccessFile.close() внутренний метод FileChannel.force()?

Я использую RandomAccessFile для выполнения некоторых записей в файл как часть транзакции. Прежде чем зафиксировать транзакцию, я хочу быть абсолютно уверенным, что данные записываются на диск. призвание force(boolean) на RAF FileChannel По-видимому…
1 ответ

Распределение байтов, влияющих на передачу файлов в JAVA NIO

У меня есть файл 7Gig для отправки с использованием JAVA NIO в 2 сценариях: Во-первых, клиент будет отправлять файл, и я выделю буфер размером 500 МБ, это быстро, это заняло всего 30 секунд. Во-вторых, сервер будет отправлять файл, и я все еще испол…
01 июн '16 в 03:59
1 ответ

Карта FileChannel - не может быть расширена для записи

Я открываю большой файл (~ 200 МБ) с помощью RandomAccessFile, а затем получаю канал для него. Я пытаюсь сопоставить некоторые данные с MappedByteBuffer, но я получаю исключение: Канал не открыт для записи - невозможно расширить файл до необходимого…
27 фев '14 в 22:00
1 ответ

FileChannel.write неполный

Я использую FileChannel записать 2MB данных в файл. private void write(int numEntries, int entrySize) throws Exception { File dir = new File(iotestDir); dir.mkdirs(); File file = new File(dir, "data00001.dat"); file.delete(); file.createNewFile(); t…
12 мар '15 в 05:17
1 ответ

Какая польза от CompletionHandler в AsynchronousFileChannel для чтения данных?

Я работаю с AsynchronousFileChannel для чтения данных. Для чтения данных я нашел два метода чтения следующим образом: //1. Future<Integer> java.nio.channels.AsynchronousFileChannel.read(ByteBuffer dst, long position); //2. void java.nio.channe…
12 дек '16 в 10:23
1 ответ

Будет ли FileChannel#write всегда записывать весь буфер?

(Это связано с (или, скорее, с "противоположностью") Будет ли FileChannel.read читать меньше байтов, чем указано, если данных достаточно?) TL; DR: Будет ли это всегда писать весь буфер... ByteBuffer bytes = ...; fileOutputStream.getChannel().write(b…
29 апр '15 в 13:47
1 ответ

Как использовать java.nio.channels.FileChannel для чтения в ByteBuffer, чтобы добиться такого же поведения, как BufferedReader#readLine()

Я хочу использовать java.nio.channels.FileChannel читать из файла, но я хочу прочитать строку в строке, как BufferedReader#readLine() делает. Причина, по которой мне нужно использовать java.nio.channels.FileChannel вместо java.io потому что мне нужн…
14 июн '11 в 15:44
0 ответов

В чем особая разница между FileChannel и MappedByteBuffer

MacOS 10,14 2,2 ГГц Intel Core i7 Когда я читаю исходный код RocketMQ, есть два способа записи данных в MappedFile: Записать данные в writeBuffer, зафиксировать в FileChannel, а затем вызвать fileChannel.force() для сброса данных на диск; Записать д…
08 янв '19 в 06:24
2 ответа

Копировать изображение из одной папки в другую - Android

Привет всем Я пытаюсь скопировать изображение из одной папки в другую, которую пользователь выбирает из галереи. Это не вызывает никакой ошибки. Пожалуйста, проверьте код ниже. protected void onActivityResult(int requestCode, int resultCode, Intent …
2 ответа

Вставьте скобки в определенные места в файле

Я пытаюсь написать скрипт, который, учитывая файл, будет искать по нему, и каждый раз, когда он встречает вызов require, будет добавлять скобки, так что, например, var x = require("name") становится var x = require(["name"]) Обычно для чего-то подоб…
26 июн '15 в 00:17
2 ответа

Добавлены пробелы при записи файлов

Я изменяю исходный код H2 MVStore 1.4.191 для записи файлов, выполняя некоторый поток сна. Большим изменением является то, что файл больше не записывается за один раз, а фрагментами размером 2^16 байт. MVStore использует java nio FileChannel и ByteB…
11 янв '18 в 09:19
1 ответ

Самый быстрый способ прочитать строку в файле

Я использую RandomAccessFile читать некоторые данные из большого файла.RandomAccessFile есть метод seek который указывает курсор на определенную часть файла, которую я хочу прочитать всю строку. Чтобы прочитать эту строку я использую readLine() мето…
21 фев '17 в 19:15
0 ответов

Использование файлового канала java растет со временем

Я использую функцию java nio filechannel TransferFrom вместе с Apache httpclient для загрузки файлов из Интернета. Он запускается нормально, но использование процессора неожиданно возрастает через некоторое время. И скорость загрузки уменьшается и в…
31 авг '14 в 08:10
1 ответ

Какой метод более эффективен для объединения больших файлов в Java с помощью FileChannels

Я хочу выяснить, какой из двух методов лучше всего подходит для объединения моих текстовых файлов на Java. Если у кого-то есть понимание того, что он может рассказать о том, что происходит на уровне ядра, которое объясняет разницу между этими метода…
19 май '11 в 22:30
3 ответа

Получить позицию на файловом канале

У меня есть класс, который копирует один файл из одной папки в другую: public class Foo extends JFrame{ Timer t; FileChannel inp = null, outp= null; File sourceFile = new File("C:/movies/movie.mkv"), destFile = new File("C:/test/movie.mkv"); long re…
28 сен '16 в 16:03
0 ответов

Изображение и видео не читаются после перемещения в Android

Я использую эти функции для перемещения некоторых изображений и видео в пользовательские папки: public static void moveFile(File src, File dst) throws IOException { FileChannel inChannel = new FileInputStream(src).getChannel(); FileChannel outChanne…
05 янв '14 в 09:47
2 ответа

Является ли FileChannel.position() потокобезопасным?

Безопасно ли писать из разных потоков в один файл, используя FileChannel.position()? Это необходимо для многочастной загрузки. Каждая нить будет записывать свою позицию в файле, т.е. позиции нити не будут пересекаться.
18 ноя '18 в 10:12
1 ответ

ObjectInputStream генерирует исключение ioexception в разделе блокировки файловой блокировки

У меня есть функция, которая должна поместить пару ключ-значение в карту, хранящуюся в файле. Если файл не существует, я должен создать его. Я пытаюсь заблокировать файл, когда работаю с ним с помощью блокировки файлов (). Но когда я пытаюсь записат…
01 июл '18 в 08:47