使用try-catch块时,将catch块留空是否总是一种糟糕的编程技巧?捕捉异常,是否和不要
在我预计会发生异常的情况下,例如,我正在从文件读取10个值并将每个值转换为字符串。有可能这10个值中的一个可能为空,但我不想在这一点停止执行,而是继续(明显使用try catch)
我的一个蹩脚的例子尝试:
String _text = textReader.ReadLine(); //Assuming this RETURNS a NULL value
try {
String _check = _text.ToString();
//Do something with _check, but it should not be NULL
}
catch (Exception)
{ //Do Nothing }
在这一点上,当我抓到一个例外:
1.我不想记录此。因为我期待一个错误的价值。
2.我不想重新向调用堆栈抛出异常。
3.我想继续执行我的执行
在这些情况下,是否可以接受为空?或者这是一个完整的NO-NO,有更好的方法来处理这个问题吗?
我认为这可以是一个社区维基,因为它也处理编程技术。
- 伊瓦尔
可能重复:http://stackoverflow.com/questions/2737328/why-should-i-not-wrap-every-block-in-try-catch – Konrad 2010-07-15 18:55:20
@Konrad:我不认为所以。你列出的可能重复是关于try/catch块是否应该正常使用;这是一个空的catch块在某种情况下是否有意义。 – 2010-07-15 19:13:30