リフレクションを使用して実行時にメソッドを実行しています。ただし、メソッドが何も返さない場合は、呼び出されたメソッドによって出力された最後の行を読み取り、それを String 変数に格納したいと考えています。私は完全に修正されているので、誰かがこの問題を手伝ってくれませんか。現在、私は System.setOut を使用してそれを行っています。これを行うより良い方法はありますか。以下は、私が現在使用しているコードです。
PrintStream originalOutStream = System.out;
System.setOut(new PrintStream(new FileOutputStream("D:/myFile.txt")));
smething(2);// a method which prints something
System.setOut(originalOutStream);
FileInputStream fr = new FileInputStream("D:/myFile.txt");
BufferedReader br = new BufferedReader(new InputStreamReader(fr));
String strLine;
//Read File Line By Line
while ((strLine = br.readLine()) != null) {
.. Do the necessary processing
}