输出流不会生成文件

时间:2016-05-24 20:26:46

标签: java file file-writing

下面的代码应该创建并写入文件,但它不会在我的目录中创建文件。 Scanner的所有内容都有效,它会完美地扫描jTextField内的所有内容。

OutputStream os;
try {
    os = new FileOutputStream("kurinys.dat");
    try (DataOutputStream dos = new DataOutputStream(os)) {
        Scanner skanuoklisSaugojimui = new Scanner(jTextField1.getText());
        while(skanuoklisSaugojimui.hasNextInt()){
            int natosAukstis = skanuoklisSaugojimui.nextInt();
            dos.writeInt(natosAukstis);
        }
    }
    os.close();
} catch (FileNotFoundException ex) {
    Logger.getLogger(Grafika.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
    Logger.getLogger(Grafika.class.getName()).log(Level.SEVERE, null, ex);
}

有人可以帮我找到问题吗?

1 个答案:

答案 0 :(得分:0)

不要使用嵌套式尝试,它没有任何意义,可能会在异常处理方面遇到很多问题。

OutputStream os;
 try {
os = new FileOutputStream("kurinys.dat");
}
catch (FileNotFoundException e) {
}


try (DataOutputStream dos = new DataOutputStream(os)) {
    Scanner skanuoklisSaugojimui = new Scanner(jTextField1.getText());
    while(skanuoklisSaugojimui.hasNextInt()){
        int natosAukstis = skanuoklisSaugojimui.nextInt();
        dos.writeInt(natosAukstis);
    }
}
os.close();
} catch (FileNotFoundException ex) {
Logger.getLogger(Grafika.class.getName()).log(Level.SEVERE, null, ex);
} catch (IOException ex) {
Logger.getLogger(Grafika.class.getName()).log(Level.SEVERE, null, ex);
}