请问一个java基础问题 java的异常捕捉好像就作你所说的这种事吧。只不过我们一般不是记录到log文件中,而是打印到屏幕上。不过我想也应该可以记录到文件中。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 试试这个:String filename = this.getClass().getName(); 怎么用apache的开源项目啊,说详细点可以吗? ft,这个需要这么复杂地处理吗?我想你的目的是想知道,如果出了错,错在哪里,最好指定到文件行把(如果不是这个意思,抱歉,别往下看了),JAVA的错误处理机制是都可以搞定的啊,要记录到文件也很容易的,首先在需要的地方捕捉错误异常,然后,打开一个文件流(你可以事先准备好这个),把这个文件流作为参数传递给捕获的异常的printStackTrace方法,就可以了。如果直接点,就直接访问这个方法,把错误信息输出到控制台就可以了。 我觉得还是说的不清楚,另外我仅仅是输出一个String,但并不发生异常,只是一条log信息,表示我的程序走到这里了,这也要用异常我觉得不太合适 如果是这样的话,你使用JDK1.4吗?如果是,请查阅java.util.logging 包,应该是够满足你的了。我想你没有什么特殊需求不能使用JDK1.4吧。呵呵 更一般的,你可以自己实现一个简单的LOG,只有一个方法:public static void log(String msg) { System.out.println(msg);}在完成调试以后把里面的输出语句注释掉就可以去掉所有调试信息,并在需要的时候打开它。 logging包我还没有研究过,我怎样得到调用它的方法时所在的文件名和行数呢? 引用:回复人: sam79(剑舞飘飘) ( ) 信誉:100 2003-09-12 21:28:00 得分:0 试试这个:String filename = this.getClass().getName(); 引用:这个可以获得所在类的名字,但并不是文件名啊,我想得到所在文件的文件名怎么办呢?你难道大多数时间都是一堆类放在一个文件里的吗?建议你改掉这个习惯,一般情况类名和文件名完全相同,而且一个文件一个类就可以了,除非考虑设计,才使用内嵌类。所以一个类名对应文件名是最正常的。至于行号,为什么要呢?引用:另外我仅仅是输出一个String,但并不发生异常,只是一条log信息,表示我的程序走到这里了所有的已经满足你的了,你记录行数没有任何意义,因为这根本不是一个错误,没有必要这么精确,还有,既然是输出了,你看到输出结果当然应该知道执行到哪里了,单看行数你能知道自己跑到哪里了?不可能吧。如果只输出行数我恐怕你找起来更麻烦,输出特殊字符串的话只要简单的查询就立刻可以定位。 Java 文本域框内的 字符串分割 问题 如何使用 线程wait() 和notify()这2个方法 基本组件疑问 java字符排序 java如何实现文件拷贝? 换颜色,菜鸟问题,急!请前辈指点!在线等待 超简单,类的修饰符的问题,高手进来拿分,在线 如何让java进行类c++的异常处理? 请教JAVA下项目管理应该怎么进行?如果有这方面的经验者请进 向各位高手求教 超难问题,高手请进 java如何控制弹出IE窗口的大小
String filename = this.getClass().getName();
我想你的目的是想知道,如果出了错,错在哪里,最好指定到文件行把(如果不是这个意思,抱歉,别往下看了),
JAVA的错误处理机制是都可以搞定的啊,要记录到文件也很容易的,
首先在需要的地方捕捉错误异常,
然后,
打开一个文件流(你可以事先准备好这个),把这个文件流作为参数传递给
捕获的异常的printStackTrace方法,就可以了。如果直接点,就直接访问这个方法,
把错误信息输出到控制台就可以了。
请查阅java.util.logging
包,
应该是够满足你的了。
我想你没有什么特殊需求不能使用JDK1.4吧。呵呵
只有一个方法:
public static void log(String msg) {
System.out.println(msg);
}
在完成调试以后把里面的输出语句注释掉就可以去掉所有调试信息,
并在需要的时候打开它。
回复人: sam79(剑舞飘飘) ( ) 信誉:100 2003-09-12 21:28:00 得分:0
试试这个:
String filename = this.getClass().getName();
引用:
这个可以获得所在类的名字,但并不是文件名啊,我想得到所在文件的文件名怎么办呢?你难道大多数时间都是一堆类放在一个文件里的吗?
建议你改掉这个习惯,一般情况类名和文件名完全相同,而且一个文件一个类就可以了,
除非考虑设计,才使用内嵌类。所以一个类名对应文件名是最正常的。
至于行号,为什么要呢?
引用:
另外我仅仅是输出一个String,但并不发生异常,只是一条log信息,表示我的程序走到这里了所有的已经满足你的了,你记录行数没有任何意义,因为这根本不是一个错误,没有必要这么精确,还有,既然是输出了,你看到输出结果当然应该知道执行到哪里了,单看行数你能知道自己跑到哪里了?不可能吧。如果只输出行数我恐怕你找起来更麻烦,输出特殊字符串的话只要简单的查询就立刻可以定位。