... > Java > Потоки ввода-вывода в...

Потоки ввода-вывода в Java

НАВИГАЦИЯ ПО СТРАНИЦЕ

Чтение из файла Запись в файл

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

Чтение из файла

Для чтения данных из файла используется класс FileInputStream совместно с классом BufferedInputStream. Пример:

import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.IOException;

public class InputStreamExample {
    public static void main(String[] args) {
        try (BufferedInputStream input = new BufferedInputStream(new FileInputStream("example.txt"))) {
            int data;
            while ((data = input.read()) != -1) {
                System.out.print((char) data);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Запись в файл

Для записи данных в файл используется класс FileOutputStream совместно с классом BufferedOutputStream. Пример:

import java.io.BufferedOutputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class OutputStreamExample {
    public static void main(String[] args) {
        try (BufferedOutputStream output = new BufferedOutputStream(new FileOutputStream("output.txt"))) {
            String data = "Пример записи в файл.";
            output.write(data.getBytes());

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Потоки ввода-вывода с символьными данными

Чтение символьных данных из файла

Для чтения символьных данных из файла используется класс FileReader совместно с классом BufferedReader. Пример:

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;

public class CharacterInputStreamExample {
    public static void main(String[] args) {
        try (BufferedReader reader = new BufferedReader(new FileReader("example.txt"))) {
            String line;
            while ((line = reader.readLine()) != null) {
                System.out.println(line);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Запись символьных данных в файл

Для записи символьных данных в файл используется класс FileWriter совместно с классом BufferedWriter. Пример:

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;

public class CharacterOutputStreamExample {
    public static void main(String[] args) {
        try (BufferedWriter writer = new BufferedWriter(new FileWriter("output.txt"))) {
            String data = "Пример записи символов в файл.";
            writer.write(data);

        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

Эти примеры предоставляют основы работы с потоками ввода-вывода в Java, но важно помнить о необходимости обработки исключений и закрытия потоков для избежания утечек ресурсов.