SHARE
TWEET

Untitled

a guest Mar 21st, 2017 55 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. public static void main(String[] args) throws Exception
  2. {
  3.  //запоминаем настоящий PrintStream в специальную переменную
  4.  PrintStream consoleStream = System.out;
  5.  
  6.  //Создаем динамический массив
  7.  ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
  8.  //создаем адаптер к классу PrintStream
  9.  PrintStream stream = new PrintStream(outputStream);
  10.  //Устанавливаем его как текущий System.out
  11.  System.setOut(stream);
  12.  
  13.  //Вызываем функцию, которая ничего не знает о наших манипуляциях
  14.  printSomething();
  15.  
  16.  //Преобразовываем записанные в наш ByteArray данные в строку
  17.  String result = outputStream.toString();
  18.  
  19.  //Возвращаем все как было
  20.  System.setOut(consoleStream);
  21.  
  22.  //разворачиваем строку
  23.  StringBuilder stringBuilder = new StringBuilder(result);
  24.  stringBuilder.reverse();
  25.  String reverseString = stringBuilder.toString();
  26.  
  27.  //выводим ее в консоль
  28.  System.out.println(reverseString);
  29. }
  30.  
  31. public static void printSomething()
  32. {
  33.  System.out.println("Hi");
  34.  System.out.println("My name is Amigo");
  35.  System.out.println("Bye-bye!");
  36. }
RAW Paste Data
Top