【发布时间】:2012-03-19 09:52:47
【问题描述】:
我想创建一个记录器来记录我发送到System.out 的所有消息。
为此我了解了 java Logger 类。
但如果我理解这个类的目的,它只允许编写代码中预先定义的日志消息。
如果我不想创建System.out。 logger 我必须创建自己的 logger 类。
String dateTime = new String (now("MM-dd-yy_HH!mm!ss"));
BufferedReader sysLogger = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter sysWriter = new BufferedWriter(new FileWriter(new File(currentDir+"/logs/commando/CmdLog_"+dateTime+".txt")));
String readLine = new String();
String lastLine = new String();
readLine = sysLogger.readLine();
while(iSysLog == 1){ //TODO
if(lastLine != readLine){
sysWriter.write(readLine);
lastLine = readLine;
}
readLine = sysLogger.readLine();
}
为什么这个代码不起作用?
还有:有没有更好的方法来实现我的目标?
【问题讨论】:
-
我完全不知道该代码要做什么。
-
这甚至与 Eclipse 无关(正如您的标签所暗示的那样)。您还需要修复代码格式。
-
这段代码有很多问题。
readLine = new String();是不必要的。将字符串与!=进行比较将不起作用。 -
我怎样才能实现记录传递给 System.out 的所有消息的目标?