读取文件内容并生成有关SQL语句(JAVA)

读取文件内容并生成相关SQL语句(JAVA)

对IO流读写文件的一次使用,具体开发中两者用使用貌似也用不到,往往仅仅是上传或者只是做一个文件内容的保存。(初始化输出流与字符输出流是关键,之后逐条write)

/**

* 规定格式的CSV转存sql语句(商品信息与商品规格信息)

* @param file文件名

* @param c 分隔符' '

* */

public static void CastToSql(Filefile,String c){

File f = new File("test.sql");

        FileWriter fw;

        BufferedWriter bw;

        try {

            fw = new FileWriter(f);// 初始化输出流

            bw = new BufferedWriter(fw);// 初始化输出字符流

            List<String[]> list = CsvUtil.getCSVDate(file,c);//(简单通过BUfferReader进行逐行读取并且以字符串集合形式返回,此处代码略若有需要可以查看之前博文)

         for (int i = 0; i < list.size(); i++) {

    if (i==0) {

    continue;//第一行读取为上标 非数据故而跳过

    }

    String[] str = list.get(i);

    String sql= "INSERT INTO t_general_goods (partner_code,customer_code,product_code,name,category,bar_code,unit,weight,package_spec) VALUES ('"

    + partnerCode+ "','"+ "default_"+partnerCode+ "','"

    + str[0]+ "','"+ str[2]+ "','"+ str[3]+ "','"+ str[4]+ "','" + str[5] + "','" + str[6] + "','" + str[7] + "');"+"\n"+"commit;"+"\n";//根据需要获取数据并拼装成相应的sql语句输出

   

                bw.write(sql);

    }

            bw.flush();

            bw.close();

            fw.close();

             

        } catch (Exception e) {

            e.printStackTrace();

        }

}