处理异常代码
package text;
/**
*
* @author 让痛苦痛苦
* @prama 说明:y异常处理的一个有用的功能是能够在错误产生时,程序会将错误送到用来处理特殊错误的代码块中。
* @prama 下面的代码片段说明了这种处理方式
*
*
*/
import java.util.*;
import java.io.*;
public class LoadLogFile {
public void LoadLogFile()
{
String logFile="";
StringBuffer sbLog=null;
try {
FileInputStream file=new FileInputStream(logFile);
DataInputStream in=new DataInputStream(file);
byte[] b=new byte[in.available()];
in.readFully(b);
in.close();
sbLog=new StringBuffer(new String(b,0,b.length,"Cp850"));
System.out.println("Log file loaded");
} catch (FileNotFoundException e) {
System.out.println("File not found:incorrect name or an't be oended for reading");
// TODO: handle exception
}
catch(IOException ioe)
{
//有些软件不能读取
//用户权限不足以打开这些文件
//硬盘损坏
//文件损坏
ioe.printStackTrace();
}
catch(Exception e)
{
e.printStackTrace();
}
}
/**
* 如果文件不能打开(例如给出的名字是个目录名,或者已经存在而且是只读的),则
* 会产生一个FileNotFoundException,正如在API文档中对FileInputStream进行的说明。如果有
* 有个关于DataInputStream的问题,并且其功能readFully,就会产生一个IOException。对于
* 每个单独的异常,都会有适当的处理程序。
* 严格来说,最后的异常块是不必要的,然而,它通过包括catch-all。任何异常(如前面两个清单)
* 或者任何其他会突然出现的——都会被作为通用异常捕获。
* 提示:
* 虽然在普通的水平捕获异常非常诱人,但这样做通常认为不是一种好的方式,并且有可能丢失有
* 价值的关于何时和怎样的错误信息。
*
*/
}