首页 > 解决方案 > Veracode CWE ID 404 不正确的资源关闭或释放

问题描述

我有这个代码:

    try {
        BufferedWriter bw = null;
        FileWriter fw = null;
        try {
            final String fileName = getFileName();
            File propertiesFile=new File(getFilesDir(), fileName);
            fw = new FileWriter(propertiesFile);
            bw = new BufferedWriter(fw);
            bw.write(s);
            File file = new File(getFilesDir(), fileName);

        } catch (IOException e) {

        }finally{
            if(bw != null){
                bw.close();
            }
            if(fw != null){
                fw.close();
            }
            if(bw != null){
                bw.close();
            }
        }
    } catch (Exception e) {
    }

Veracode 在此行bw.write(s)上检测到缺陷(不正确的资源关闭或释放); 如何解决这个问题?提前致谢

标签: javaandroidveracodesecure-coding

解决方案


从 java 7 开始使用 try-with-resources

try (FileWriter fw = new FileWriter(propertiesFile);
    BufferedWriter bw = new BufferedWriter(fw)){
    ......

}catch (Exception e){}

推荐阅读