Как работать с файлами java

Аватар пользователя Ivan Gagarinov
Ivan Gagarinov
20 сентября 2022

Для работы с файлами можно использовать методы из библиотеки java.nio.file. Библиотека предоставляет классы Path и Paths для работы с путями файлов, а также класс Files для манипулирования с файловой системой.

Сначала нужно сформировать путь к файлу с помощью класса Paths, например используя метод Paths.get(). Получившийся объект нужно использовать в методах класса Files.

Пример создания и чтения файлов:

import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

public class App {

    public static void main(String[] args) throws Exception {

        // Создание файла:
        // Получаем путь к нужному файлу
        Path writeFilePath = Paths.get("/tmp/file.txt");

        // Создаём файл
        try {
            Path createdFilePath = Files.createFile(writeFilePath);
            System.out.println("Файл создан: " + createdFilePath);
        } catch (Exception e) {
            e.printStackTrace();
        }

        // Чтение файла:
        // Получаем путь к нужному файлу
        String readFilePath = "/tmp/file.txt";

        // Формируем абсолютный путь,
        // если filePath будет содержать относительный путь,
        // то мы всегда будет работать с абсолютным
        Path path = Paths.get(readFilePath).toAbsolutePath().normalize();


        // Проверяем существование файла
        if (!Files.exists(path)) {
            throw new Exception("File '" + path + "' does not exist");
        }

        // Читаем файл
        String content = Files.readString(path);

        // Выводим содержимое
        System.out.println(content);
    }
}
8 1
Основы Java за 14 дней
  • 62 урока в онлайн-тренажере
  • 4 живых вебинара и масскодинг
  • Помощь наставника на весь период обучения

Есть что добавить? Зарегистрируйтесь

или войдите в аккаунт

Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»

Курсы по программированию на Хекслете

Backend-разработка

Разработка серверной части сайтов и веб-приложений

Frontend-разработка

Разработка внешнего интерфейса сайтов и веб-приложений и верстка

Создание сайтов

Разработка сайтов и веб-приложений на JS, Python, Java, PHP и Ruby on Rails

Тестирование

Ручное тестирование и автоматизированное тестирование на JS, Python, Java и PHP

Аналитика данных

Сбор, анализ и интерпретация данных на Python

Интенсивные курсы

Интенсивное обучение для продолжающих

DevOps

Автоматизация настройки локального окружения и серверов, развертывания и деплоя

Веб-разработка

Разработка, верстка и деплой сайтов и веб-приложений, трудоустройство для разработчиков

Математика для программистов

Обучение разделам математики, которые будут полезны при изучении программирования

JavaScript

Разработка сайтов и веб-приложений и автоматизированное тестирование на JS

Python

Веб-разработка, автоматическое тестирование и аналитика данных на Python

Java

Веб-разработка и автоматическое тестирование на Java

PHP

Веб-разработка и автоматическое тестирование на PHP

Ruby

Разработка сайтов и веб-приложений на Ruby on Rails

Go

Курсы по веб-разработке на языке Go

HTML

Современная верстка с помощью HTML и CSS

SQL

Проектирование базы данных, выполнение SQL-запросов и изучение реляционных СУБД

Git

Система управления версиями Git, регулярные выражения и основы командой строки