Как работи Java InputStream

Kak Raboti Java Inputstream



Java позволява на разработчиците да работят с файловете. В такъв случай „ InputStream ” влиза в сила класът, който подпомага четенето на указаното съдържание на файла заедно с анализирането на съдържащите се байтове. Това води до справяне с проблемите с паметта и ефективно връщане на селективното файлово съдържание според изискването.

Това описание ще разработи подробно работата на „InputStream“ в Java.







Как работи Java InputStream?

Класът „InputStream“ на „ java.io ” пакет съответства на абстрактен суперклас, който връща входен поток, състоящ се от байтове срещу посочения файл.



Подкласове на InputStream

За да се приложат функционалностите на 'InputStream', могат да се използват следните подкласове:



    • FileInputStream
    • ObjectInputStream
    • ByteArrayInputStream

Това е така, че тези подкласове разширяват класа 'InputStream'.





Методи на InputStream

Класът “InputStream” съдържа различни методи, които се прилагат от неговите подкласове. Следват някои от най-често използваните методи:

Методи Функционалност
Прочети() Той чете байт данни от входния поток.



четене (байт [] масив) Той също така чете байтове от потока и ги съхранява в целевия масив.

пропусни () Този метод пропуска/пропуска конкретния брой байтове от входния поток.

на разположение() Той дава съдържащите се байтове във входния поток.
нулиране() Той дава достъп до точката на потока, където е поставена марката.

марка () Този метод маркира позицията в потока, до която данните са били прочетени.

markSupported() Той анализира дали методите „mark()“ и „reset()“ се поддържат/съвместими в потока.


Преди да се насочите към примера, импортирайте следните пакети, за да работите с „InputStream“ и неговия подклас:

импортиране на java.io.FileInputStream;
импортиране на java.io.InputStream;


Пример: Работа на InputStream в Java

Този пример илюстрира работата на „InputStream“ чрез четене на съдържанието на файла чрез методите „InputStream“:

публичен клас Inputstream {
публичен статичен void main ( Низови аргументи [ ] ) {
байт [ ] даден масив = нов байт [ петдесет ] ;
опитвам {
InputStream readData = нов FileInputStream ( 'readfile.txt' ) ;
System.out.println ( 'Байтове във файла -> ' + readData.available ( ) ) ;
readData.read ( даден масив ) ;
System.out.println ( „Четене на файлови данни:“ ) ;
Низ съдържа данни = нов низ ( даден масив ) ;
System.out.println ( съдържа данни ) ;
readData.close ( ) ;
}
улов ( Изключение освен ) {
освен.getStackTrace ( ) ;
}
} }


Съгласно горните кодови редове, изпълнете следните стъпки:

    • Първо създайте масив от „байтове“, който може да съдържа максимум „ петдесет ” байтови стойности в прочетения файл.
    • В следващата стъпка създайте „ InputStream ”, използвайки „FileInputStream” и връща наличните байтове в указания файл чрез свързания „ на разположение() ” метод.
    • След това прочетете байтовете от входния поток, като използвате „ Прочети() ” метод.
    • Сега преобразувайте масива от байтове в низ и покажете съдържанието на файла.
    • И накрая, затворете прочетения файл, като използвате свързания „ близо() ” метод.

Изход


В този резултат може да се подразбира, че броят байтове във файла, т.е. натрупаното пространство от съдържанието, се връща в съответствие с максималния диапазон в масива от байтове, т.е. „50“. Освен това съдържанието на файла се връща по подходящ начин.

Съдържание на файла


За да получите преглед на „ пропусни () ' и ' нулиране() ” разгледайте следната демонстрация:


В тази илюстрация методът „skip()“ пропуска определения брой байтове, т.е. 5 -> Java ” от съдържанието на файла от самото начало. Методът “reset()” обаче нулира потока.

Заключение

InputStream ' клас на ' java.io ” пакет е абстрактен суперклас, който съответства на входен поток от байтове, използвани за четене на файловите данни. Този клас включва различни методи, които подпомагат методологиите за четене на файла ефективно според изискванията. Този блог демонстрира целта и работата на „InputStream“ в Java.