文件读取类-CSV文件读取法1

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/mohuanzhen/article/details/83907523
读取.csv文件并且插入到数据库中
首先下载csvjdbc.jar,将此jar放在项目的class目录下(下载目录http://sourceforge.net/projects/csvjdbc)


//加载csv驱动,此驱动与数据库驱动的功能一样
Class.forName("org.relique.jdbc.csv.CsvDriver");
//设置一些属性
Properties props = new java.util.Properties();
props.put("separator",","); // 确定分隔符
props.put("suppressHeaders","false"); // 设置是否包含首行,false为首行为标题,true首行为内容,默认为false
props.put("fileExtension",".csv"); // 文件类型.csv
props.put("charset","unicode"); //设置编码,这里非常重要的,如果读取是非二进制文件那么需要设置成unicode
//获取到链接,注意D:\\ad\\为我的.csv文件所在目录*(需要自己修改为你的.csv所在的目录)
conn = DriverManager.getConnection("jdbc:relique:csv:D:\\ad\\",props);
//获取Statement语句(Statement 对象用于将 SQL 语句发送到数据库中)
Statement stmt = conn.createStatement();
//执行结果,注意这条语句跟数据库的查询语句是完全一样的,*可以拿.csv的列头取代
ResultSet results = stmt.executeQuery("SELECT * from .csv文件名");
String sql = "执行插入数据库的语句";
conn = db.getConnection(); //获取数据库连接
PreparedStatement ps = conn.prepareStatement(sql); //预编译语句
// dump out the results
while (results.next()) {
System.out.println("信息1: " +results.getString(1) + " "+"信息2: " + results.getString(2);
ps.setInt(1, Integer.parseInt(results.getString(1)));
ps.setString(2,results.getString(2));

ps.executeUpdate();
}
// clean up
results.close();
stmt.close();
ps.close();
conn.close();

猜你喜欢

转载自blog.csdn.net/mohuanzhen/article/details/83907523