Јава ИнпутСтреам (са примером)

У овом упутству ћемо научити о класи Јава ИнпутСтреам и њеним методама уз помоћ примера.

InputStreamКласа у java.ioпакету је апстрактна суперцласс који представља улазни ток бајтова.

Пошто InputStreamје апстрактна класа, она сама по себи није корисна. Међутим, његове подкласе се могу користити за читање података.

Подкласе ИнпутСтреам

Да бисмо користили функционалност InputStream, можемо да користимо његове подкласе. Неки од њих су:

  • ФилеИнпутСтреам
  • БитеАрраиИнпутСтреам
  • ОбјецтИнпутСтреам

О свим овим поткласама сазнаћемо у следећем упутству.

Направите ИнпутСтреам

Да бисмо креирали ИнпутСтреам, прво морамо да увозимо java.io.InputStreamпакет. Једном када увозимо пакет, ево како можемо створити улазни ток.

 // Creates an InputStream InputStream object1 = new FileInputStream(); 

Овде смо креирали улазни ток користећи FileInputStream. То је зато што InputStreamје апстрактна класа. Отуда не можемо створити објекат InputStream.

Напомена : Улазни ток такође можемо створити из других подкласа InputStream.

Методе ИнпутСтреам

InputStreamКласа предвиђа различите методе које се спроводе својим подкласе. Ево неколико најчешће коришћених метода:

  • read() - чита један бајт података из улазног тока
  • read(byte() array) - чита бајтове из тока и чува у наведеном низу
  • available() - враћа број бајтова доступан у улазном току
  • mark() - означава положај у улазном току до ког су подаци прочитани
  • reset() - враћа контролу у тачку у току где је постављена ознака
  • markSupported()- проверава да ли је mark()и reset()метод подржан у стриму
  • skips() - прескаче и одбацује наведени број бајтова из улазног тока
  • close() - затвара улазни ток

Пример: ИнпутСтреам помоћу ФилеИнпутСтреам

Ево како можемо да применимо InputStreamкоришћење FileInputStreamкласе.

Претпоставимо да имамо датотеку која се зове инпут.ткт са следећим садржајем.

 This is a line of text inside the file. 

Покушајмо да читамо ову датотеку користећи FileInputStream(подкласу од InputStream).

 import java.io.FileInputStream; import java.io.InputStream; public class Main ( public static void main(String args()) ( byte() array = new byte(100); try ( InputStream input = new FileInputStream("input.txt"); System.out.println("Available bytes in the file: " + input.available()); // Read byte from the input stream input.read(array); System.out.println("Data read from the file: "); // Convert byte array into string String data = new String(array); System.out.println(data); // Close the input stream input.close(); ) catch (Exception e) ( e.getStackTrace(); ) ) ) 

Оутпут

 Available bytes in the file: 35 Data read from the file: This is a line of text inside the file 

У горњем примеру смо креирали улазни ток користећи FileInputStreamкласу. Улазни ток повезан је са датотеком инпут.ткт .

 InputStream input = new FileInputStream("input.txt"); 

Да бисмо читали податке из датотеке инпут.ткт , применили смо ове две методе.

 input.read(array); // to read data from the input stream input.close(); // to close the input stream 

Да бисте сазнали више, посетите Јава ИнпутСтреам (званична Јава документација).

Занимљиви Чланци...