Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.javarush.test.level19.lesson08.task01;
- /* Ридер обертка
- В методе main подмените объект System.out написанной вами ридер-оберткой по аналогии с лекцией
- Ваша ридер-обертка должна преобразовывать весь текст в заглавные буквы
- 1.Вызовите готовый метод printSomething(), воспользуйтесь testString
- 2.Верните переменной System.out первоначальный поток.
- 3. Вывести модифицированную строку в консоль.
- */
- import java.io.ByteArrayOutputStream;
- import java.io.PrintStream;
- public class Solution {
- public static TestString testString = new TestString();
- public static void main(String[] args) {
- PrintStream originalOut = System.out;//сохраняем оригинальный System.out
- ByteArrayOutputStream bAOS = new ByteArrayOutputStream();//создаем динам. массив
- PrintStream stream = new PrintStream(bAOS);//создаем адаптер к классу PrintStream
- System.setOut(stream);//устанавливаем адаптер как текущий out
- //теперь печатает в bAOS
- testString.printSomething();//out добавляет строки в bAOS
- String result = (bAOS.toString()).toUpperCase();//переводим bAOS в String и UpperCase
- System.setOut(originalOut);//возвращаем оригинальный out (на консоль)
- System.out.println(result);//выводим в консоль (то, что result получил из bAOS)
- }
- public static class TestString {
- public void printSomething() {
- System.out.println("it's a text for testing");
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement