关于BufferedWriter的write抛异常问题
比如我要将一串字符串“123456789”写入一个文件中,使用BufferedWriter的write方法。如果write方法在写入的时候抛异常了(已经使用finally对BufferedWriter进行关闭了),请问有没有可能发生文件只写入“123456789”的前一部分情况。
就是说有没有可能发生这样情况:
我要在a.txt文件中写入“123456789”,但是在write方法写的时候发生了异常。并且a.txt文件中出现了“12345”.
示例代码:
public static void main(String[] args) throws IOException { BufferedWriter pw=null; try{ pw=new BufferedWriter(new FileWriter("C:\\1.log",true)); StringBuffer hisStr = new StringBuffer(); hisStr.append("192.168.1.39|"); hisStr.append(null+"|"); hisStr.append("1001|"); hisStr.append("3|"); hisStr.append("444|"); hisStr.append(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())); hisStr.append("\r\n"); pw.write(hisStr.toString()); }catch(Exception e){ System.out.println(e); }finally{ pw.flush(); pw.close(); } }