我对Java很陌生,我的问题可能很笨拙,但我无法弄清楚。

我有一个Logger logger = Logger.getLogger(MyClass.class.getName());

我想以字符串形式获取记录器的输出。例如当我做

logger.info("Some message");
logger.warning(" Some warning");


我想获取一个字符串someString =“ Some message SomeWarning”

我正在寻找类似的东西

ByteArrayOutputStream loggerContent = new ByteArrayOutputStream();
System.setOut(new PrintStream(loggerContent));
TextView tv = (TextView)findViewById(R.id.txt_1);
tv.setText(loggerContent.toString());


但是我没有实现它。有可能吗?

编辑:我希望该字符串在另一个活动中使用以在屏幕上显示它。

最佳答案

ByteArrayOutputStream loggerContent = new ByteArrayOutputStream();
PrintStream prStr = new PrintStream(loggerContent);
StreamHandler streamHandler = new StreamHandler(prStr, new SimpleFormatter());


我尝试过,然后再发布在这里,但没有得到结果。它确实有效,但是在尝试loggerContent.toString()之前,我必须 StreamHandler。
谢谢你们的回应。 :)

关于java - 记录器输出到字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16670128/

10-10 06:58