Advertisement
jaVer404

level19.lesson08.task05 (done) 1-st attemp

Feb 22nd, 2016
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.63 KB | None | 0 0
  1. package com.javarush.test.level19.lesson08.task05;
  2.  
  3. /* Дублируем текст
  4. Считайте с консоли имя файла
  5. В методе main
  6. 1. подмените объект System.out написанной вами ридер-оберткой по аналогии с лекцией
  7. Ваша ридер-обертка должна
  8. дублировать вывод всего текста в файл,
  9. имя которого вы считали
  10.  
  11. Вызовите готовый метод printSomething(), воспользуйтесь testString
  12.  
  13. Верните переменной System.out первоначальный поток
  14. Закройте поток файла
  15.  
  16. Пример вывода на экран:
  17. it's a text for testing
  18.  
  19. Пример тела файла:
  20. it's a text for testing
  21. */
  22.  
  23. import java.io.*;
  24.  
  25. public class Solution {
  26.     public static TestString testString = new TestString();
  27.  
  28.     public static void main(String[] args) throws IOException{
  29.         PrintStream originalPS = System.out;
  30.         BufferedReader nameReader = new BufferedReader(new InputStreamReader(System.in));
  31.         String fileName = nameReader.readLine();
  32.         nameReader.close();
  33.         PrintStream newPrintStream = new PrintStream(new FileOutputStream(fileName));
  34.         testString.printSomething();
  35.         System.setOut(newPrintStream);
  36.         testString.printSomething();
  37.         System.setOut(originalPS);
  38.         originalPS.close();
  39.     }
  40.  
  41.     public static class TestString {
  42.         public void printSomething() {
  43.             System.out.println("it's a text for testing");
  44.         }
  45.     }
  46. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement