Java файли і введення

Пакет java.io містить майже кожен клас ви могли б коли-небудь знадобиться для виконання введення та виведення (I / O) в Java. Всі ці потоки являють собою джерело вхідного і вихідного призначення. Потік в пакеті java.io підтримує безліч даних, таких як примітивів, Object, локалізованими символи і т.д.

Потік може бути визначений як послідовність даних. Є два види Streams

InputStream: The InputStream використовується для читання даних з джерела.

OutputStream: The OutputStream використовується для запису даних в пункт призначення.

Java забезпечує сильну, але гнучку підтримку введення / виведення, пов'язаних з файлами та мережами, але цей підручник охоплює дуже основні функціональні можливості, пов'язані з потоками введення / виведення. Ми бачимо найбільш часто використовуваний приклад один за іншим:

Byte Streams

Java потоки байтів використовуються для виконання введення та виведення 8-бітових байтів. Хоча є багато класів. пов'язаних з байтових потоків. але найбільш часто використовувані класи, FileInputStream і FileOutputStream. Нижче наведено приклад, який використовує ці два класи, щоб скопіювати файл введення в вихідний файл:

Character Streams

Java потокібайтов використовуються для виконання введення та виведення 8-бітових байтів, де. як потоки символів Java використовуються для введення і виведення для 16-бітної кодуванні Unicode. Хоча є багато класів. пов'язаних з символьних потоків. але найбільш часто використовувані класи, FileReader і FileWriter .. Хоча внутрішньо FileReader використовує FileInputStream і FileWriter використовує FileOutputStream. але тут основна відмінність полягає в тому. що FileReader читає два байта одночасно і FileWriter записує два байта в час.

Ми можемо переписати вище приклад, який робить використання цих двох класів, щоб скопіювати вхідний файл (має символи Юнікоду) в вихідний файл:

стандартні потоки

Всі мови програмування забезпечують підтримку стандартного введення / виведення, де програма користувача може приймати введення з клавіатури, а потім виробляти висновок на екрані комп'ютера. Якщо ви знаєте, якщо С або C ++ мови програмування, то ви повинні бути інформовані про трьох стандартних пристроїв STDIN, STDOUT і STDERR. Подібним же чином Java забезпечує наступні три стандартних потоки

Стандартний вхідний сигнал: Це використовується для подачі даних в програмі користувача і зазвичай клавіатура використовується в якості стандартного вхідного потоку і представлений у вигляді System.in.

Стандартний вихід: Використовується для виведення даних. отриманих за допомогою програми користувача і зазвичай екран комп'ютера використовується для стандартного потоку виводу і представлений у вигляді System.out.

Стандартна помилка: Використовується для виведення даних про помилки. отримані програмою користувача і зазвичай екран комп'ютера використовується в стандартний потік помилок і представлений у вигляді System.err.

Давайте тримати вище код в файлі ReadConsole.java і спробувати зібрати і виконати його, як показано нижче. Ця програма продовжує читання і висновок такий же характер, поки не натиснете 'Q':

Читання і запис файлів:

Як було описано раніше, потік може бути визначений як послідовність данних.InputStream використовується для читання даних з джерела і OutputStream використовується для запису даних в пункт призначення.

Ось ієрархія класів, щоб мати справу з вхідними та вихідними потоками.

Java файли і введення

Два важливих потокіFileInputStream і FileOutputStream, які будуть обговорюватися в цьому керівництві:

FileInputStream:

Цей потік використовується для читання даних з файлів. Об'єкти можуть бути створені за допомогою ключового слова нового і існує кілька типів доступних конструкторів.

Після конструктор приймає ім'я файлу у вигляді рядка для створення об'єкта вхідного потоку для читання файлу.

Після конструктор приймає об'єкт файлу для створення об'єкта вхідного потоку, щоб прочитати файл. Спочатку ми створюємо об'єкт файлу, використовуючи метод File () наступним чином:

Після того, як у вас є об'ектInputStream в руці, тобто список допоміжних методів. які можуть бути використані для читання для потокової передачі або робити інші операції на потоці.

Методи з Опис

Схожі статті