Книга: Основы программирования на Java
11.6. Файловый поток FileOutputStream
11.6. Файловый поток FileOutputStream
У класса FileOutputStream — два таких же конструктора, что и у FileInputStream Однако создавать объекты этого класса можно независимо от того, существует файл или нет. При создании нового объекта класс FileOutputStream перед тем, как открыть файл для вывода, сначала создает его. В очередном нашем примере символы, введенные с клавиатуры, считываются из потока System.in - по одному символу за вызов до тех пор, пока не заполнится 12-байтовый буфер. После этого создаются три файла. В первый из них, filel.txt, записываются символы из буфера, но не все, а через один — нулевой, второй и так далее. Во второй, file2.txt, записывается весь ввод, попавший в буфер. И, наконец, в третий файл записывается половина буфера, расположенная в середине, а первая и последняя четверти буфера не выводятся.
import java.io.*;
class FileOutputStreamS {
public static byte getlnput()[] throws Exception {
byte buffer[] = new byte[12];
for (int i=0; i<l 2; i++) {
buffer[i] = (byte) System.in.read();
}
return buffer;
}
public static void main(String args[]) throws Exception {
byte buf[] = getlnput();
OutputStream f() = new FileOutputStream("filel.txt");
OutputStream f1 = new FileOutputStream("file2.txt");
OutputStream f2 = new FileOutputStream("file3.txt");
for (int i=0; i < 12; i += 2) {
f0.write(buf[i]);
}
f0.close();
f1.write(buf);
f1.close();
f2.write(buf, 12/4,12/2);
f2.close();
}
}
- Достоинства и недостатки потоков
- Стандартные потоки: stdin, stdout, stdeir, stdaux, stdprn.
- 1.2 Процесс, контекст процесса и потоки
- Не допускайте того, чтобы поток пользовательского интерфейса блокировался на длительное время
- Входящий поток потенциальных клиентов (LeadGen)
- 4.3 Потоковый редактор sed
- Денежный поток из Интернета
- Применение основного потока
- Пример использования фонового потока для выполнения отдельной задачи
- Листинг 5.8. (dup2.c) Перенаправление выходного потока канала с помощью функции dup2()
- Что такое поток?
- Доступ к потоку