Java 创建文件输出流的时候报错

来源:互联网 发布:u盘启动ubuntu系统 编辑:程序博客网 时间:2024/06/01 10:28

问题:

在项目中我们用Apache的Mahout进行协同过滤的推荐,需要打开一个csv文件并将数据库里的用户数据存入其中,从而进行书籍推荐。但是在创建文件输出流的时候却捕获到了一个异常- -·

package MicrosoftImageCup;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.File;import java.io.FileOutputStream;import java.io.FileReader;import java.io.IOException;import java.io.OutputStreamWriter;import java.util.ArrayList;import java.util.List;public class CSVUtils {    /**     * 导入     *      * @param file csv文件(路径+文件名),csv文件不存在会自动创建     * @param dataList 数据     * @return     */    public static boolean importCsv(File file, List<String> dataList){        boolean isSucess=false;        FileOutputStream out=null;        OutputStreamWriter osw=null;        BufferedWriter bw=null;        try {            out = new FileOutputStream(file);            osw = new OutputStreamWriter(out);            bw =new BufferedWriter(osw);            if(dataList!=null && !dataList.isEmpty()){                for(String data : dataList){                    bw.append(data).append("\r");                }            }            isSucess=true;        } catch (Exception e) {            isSucess=false;        }finally{            if(bw!=null){                try {                    bw.close();                    bw=null;                } catch (IOException e) {                    e.printStackTrace();                }             }            if(osw!=null){                try {                    osw.close();                    osw=null;                } catch (IOException e) {                    e.printStackTrace();                }             }            if(out!=null){                try {                    out.close();                    out=null;                } catch (IOException e) {                    e.printStackTrace();                }             }        }        return isSucess;    }    /**     * 导出     *      * @param file csv文件(路径+文件)     * @return     */    public static List<String> exportCsv(File file){        List<String> dataList=new ArrayList<String>();        BufferedReader br=null;        try {             br = new BufferedReader(new FileReader(file));            String line = "";             while ((line = br.readLine()) != null) {                 dataList.add(line);            }        }catch (Exception e) {        }finally{            if(br!=null){                try {                    br.close();                    br=null;                } catch (IOException e) {                    e.printStackTrace();                }            }        }        return dataList;    }}

out = new FileOutputStream(file);

这句的时候报了异常

原因:

原来是我在运行的时候,那个CSV文件是在程序外大开着的。。。。
= = 所以才报了错。。。

0 0
原创粉丝点击