csv

package com.legend;


import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;
import java.util.zip.ZipInputStream;


public class ZipFileDemo {
private static String url = "jdbc:oracle:thin:@localhost:1521:orcl";
//用户名
private static String user = "scott";
//密码
private static String password = "tiger";
public static Connection conn;
public static PreparedStatement ps;
public static ResultSet rs;
public static Statement st;

public static void main(String[] args) throws Exception {


int i = 0;  // 计数器,初始值为0,因为csv的表头是不需要插入到DB里的,所以当为0时,不做任何
JDBC_Test JdbcDao = new JDBC_Test();
StudentBean stu1 = new StudentBean();
List<String> dataList=ZipFileDemo.importCsv(new File("D:/CSVFile.csv"));
       if(dataList!=null && !dataList.isEmpty()){
           for(String data : dataList){
           
               System.out.println(data);
               String dataBean[] = data.split(",");
               if (i > 0) {
stu1.setId(Integer.parseInt(dataBean[0].trim()));   // id为int, 所以要讲数组为1的转成int
stu1.setName(dataBean[1].trim());
stu1.setAge(Integer.parseInt(dataBean[2].trim()));
stu1.setSex(dataBean[3].trim());
try {
getConnection();
String sql = "INSERT INTO student(id,name,age,sex)"
+ "VALUES(" + stu1.getId() + "," + "'" +stu1.getName() +"'" + "," + stu1.getAge() + "," + "'" +stu1.getSex()+"'" + ")";
// String sql = "INSERT INTO student(id,name,age,sex)" + "VALUES(" + 510 + "," + "'Test'" + "," + 99 + "," + "'Demo'" + ")";
st = (Statement) conn.createStatement();  // 创建用于执行静态sql语句的Statement对象     
 int count = st.executeUpdate(sql); // 执行插入操作的sql语句,并返回插入数据的个数     
 System.out.println("向student表中插入 " + count + " 条数据"); //输出插入操作的处理结果     
} catch (Exception e) { 
e.printStackTrace();
}finally {
conn.close();
}
}
               i++;
               
               
           }
       }
   
}
public static List<String> importCsv(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) {
        e.printStackTrace();
       }finally{
           if(br!=null){
               try {
                   br.close();
                   br=null;
               } catch (IOException e) {
                   e.printStackTrace();
               }
           }
       }
 
       return dataList;
   }
 
// 连接数据库的方法
public static void getConnection() {
try {
//初始化驱动包     
           Class.forName("oracle.jdbc.driver.OracleDriver");
           conn=DriverManager.getConnection(url, user, password);
} catch (Exception e) {
e.printStackTrace();    
}
}
}
阅读更多
文章标签: 任务 作业
个人分类: 开发
想对作者说点什么? 我来说一句

spark-csv_2.10-1.5.0.jar

2018年05月18日 161KB 下载

SuperCSV-1.52相关文件

2011年06月10日 626KB 下载

高性能导出csv

2017年09月29日 88KB 下载

自动csv转xls

2018年05月16日 5.96MB 下载

pathon 读取 csv

2011年04月20日 35KB 下载

CSV Parser

2010年01月29日 26KB 下载

CSV封装操作类

2013年01月09日 8KB 下载

使用csv文件批量导入数据

2014年10月09日 3.17MB 下载

php导入导出CSV实例

2012年07月20日 3KB 下载

csv编辑器---KillinkCSV

2010年02月06日 2.78MB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭