Потоки ввода - вывода. Задания
1. Класс FileCopy
Переписать класс FileCopy
:
package io;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class FileCopy {
public static void main(String[] args) throws IOException {
FileInputStream fileIn = null;
FileOutputStream fileOut = null;
try {
fileIn = new FileInputStream("src\\io\\file.txt");
fileOut = new FileOutputStream("src\\io\\copied_file.txt");
int a;
while ((a = fileIn.read()) != -1) {
fileOut.write(a);
}
} finally {
if (fileIn != null) {
fileIn.close();
}
if (fileOut != null) {
fileOut.close();
}
}
}
}
- Добавить блок try-with-resources.
- Добавить catch блок для обработки IOException.
2. Класс FileInputOutputStreamDemo
Переписать класс FileInputOutputStreamDemo:
package io;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.IOException;
public class FileInputOutputStreamDemo {
public static void main(String[] args) {
try {
char[] symbols = {'a', 'b', 'c'};
OutputStream output = new FileOutputStream("a.txt");
for (int i = 0; i < symbols.length; i++) {
// Запись каждого символа в текстовый файл
output.write(symbols[i]);
}
output.close();
InputStream input = new FileInputStream("a.txt");
int size = input.available();
for (int i = 0; i < size; i++) {
// Чтение текстового файла посимвольно
System.out.print((char) input.read() + " ");
}
input.close();
} catch (IOException e) {
System.out.print("Exception");
}
}
}
- Добавить блок try-with-resources.
- Замените for (int i = 0; i < c.length; i++)на блок
for-each
. - Пусть file.txt записывается в каталог src/io.
3. Копирование файла в другой файл
- Написать класс, который копирует содержимое из одного файла в другой.
- Используем классы
BufferedReader
,FileReader
,BufferedWriter
,FileWriter
.
4. Отчет о сотрудниках, часть 3
- Добавить метод в класс
Employee
, который будет записывать отчет в файл. - Используем класс PrintWriter.
5. Список каталога
- Написать метод который циклически просматривает содержимое заданного каталога и выводит на печать информацию о всех файлах и каталогах, находящихся в нем и в его подкаталогах.
- Используем рекурсию.
6. Интернет магазин, часть 8
Часть 1, часть 2, часть 3, часть 4, часть 5, часть 6, часть 7.
- После покупки, записать отчет в файл, содержащий информацию о содержимом корзины.
- Используем класс
PrintWriter
для записи и форматирования отчета.
При написании программ обращайте внимание на рекомендации по оформлению кода.
Курс 'Java для начинающих' на Udemy
Please log in or register to have a possibility to add comment.