Как уже упоминалось, в FileChannel реализована реализация канала Java NIO для доступа к свойствам метаданных файла, включая создание, изменение, размер и т. Д. Наряду с этим каналы являются многопоточными, что снова делает Java NIO более эффективным, чем Java IO.
В общем, мы можем сказать, что FileChannel — это канал, который подключен к файлу, по которому вы можете читать данные из файла и записывать данные в файл. Другая важная характеристика FileChannel заключается в том, что его нельзя перевести в неблокирующий режим. и всегда работает в режиме блокировки.
Мы не можем получить объект файлового канала напрямую, объект файлового канала получается либо —
-
getChannel () — метод для любого FileInputStream, FileOutputStream или RandomAccessFile.
-
open () — метод File channel, который по умолчанию открывает канал.
getChannel () — метод для любого FileInputStream, FileOutputStream или RandomAccessFile.
open () — метод File channel, который по умолчанию открывает канал.
Тип объекта канала File зависит от типа класса, вызываемого при создании объекта, т. Е. Если объект создается путем вызова метода getchannel из FileInputStream, то канал File открывается для чтения и выдает исключение NonWritableChannelException в случае попытки записи в него.
пример
В следующем примере показано, как читать и записывать данные из Java NIO FileChannel.
Следующий пример читает из текстового файла из C: /Test/temp.txt и печатает содержимое на консоль.