2

help make 只能写代码,然后我是新手)下面是一段代码:

if(myName.equals(name)){
    BufferedReader br = null;
    try{
        File file =  new File("C:\\Users\\vany\\Desktop\\test\\" + list[i]);
        br =  new BufferedReader(new InputStreamReader(
        new FileInputStream(file), "UTF8"));

        PrintWriter wr =   response.getWriter();
        wr.print("<html>");
        wr.print("<head>");
        wr.print("<title>HelloWorld</title>");
        wr.print("<body>");
        wr.write("<div>");
        wr.write(br.readLine());

        wr.write(br.readLine());//link1
        wr.write("</div>");
        wr.write("<hr>");
        wr.print("</body>");
        wr.print("</html>");
        wr.close();
    }
    catch(XException e){
    }

但要离开只是赶上 - 坏事添加到它?

 catch(XException e){

}
4

3 回答 3

5

如果您try/finally在块中使用没有代码的语句,则finally相当于根本不使用try/finally

在这种情况下,即使抛出异常,您的finally也应该包含关闭写入器和读取器的代码。

如果您使用的是 Java 7,则可以使用try-with-resources 语句更简单地执行此操作。

于 2012-11-16T14:13:57.200 回答
1

如果您不需要finally,可以将其删除(以及try

于 2012-11-16T14:12:55.927 回答
1

try、catch 和 finally 的基本结构如下

try{
...
}catch(XException e){
...
}finally{
...
}

如果您编写 try 那么您必须捕获异常或 finally 阻塞。

如果您已放置 try 那么您必须放置 catch 或 finally。

于 2012-11-16T14:16:09.827 回答