java读取本地txt文件并插入数据库
- package com.cniia.ny.web.control.configManage;
- import java.io.BufferedReader;
- import java.io.File;
- import java.io.FileReader;
- import java.io.IOException;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.PreparedStatement;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.util.ArrayList;
- import java.util.List;
- import java.util.Scanner;
- public class InsertIntoDB {
- //读取文本操作
- public static String[] writeToDat(String path) {
- File file = new File(path);
- List<String> list = new ArrayList<String>();
- String []strings = null;
- try {
- BufferedReader bw = new BufferedReader(new FileReader(file));
- String line = null;
- //因为不知道有几行数据,所以先存入list集合中
- while((line = bw.readLine()) != null){
- list.add(line);
- }
- bw.close();
- } catch (IOException e) {
- e.printStackTrace();
- }
- //确定数组长度
- strings = new String[list.size()];
- for(int i=0;i<list.size();i++){
- String s = (String) list.get(i);
- strings[i] = s;
- }
- return strings;
- }
- //连接数据库
- public static Connection getConnection(String data,String user,String pwd){
- Connection conn = null;
- try {
- Class.forName("com.mysql.jdbc.Driver");
- conn =
DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/"+ data
+"?characterEncoding=UTF-8",user , pwd); - } catch (Exception e) {
- e.printStackTrace();
- }
- return conn;
- }
- //插入数据库,只能为一个字段
- public static boolean insertInto(String data,String table,String field,String user,String pwd,String []str){
- try {
- Connection conn = getConnection(data,user,pwd);
- conn.setAutoCommit(false);
- String sql = "INSERT INTO"+ table + "("+ field +") VALUES (?);";
- PreparedStatement pstmt = conn.prepareStatement(sql);
- for (int i = 0; i < str.length; i++) {
- pstmt.setString(1, str[i]);
- pstmt.executeUpdate();
- // conn.commit();
- }
- conn.commit();
- return true;
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- return false;
- }
- }
- public static String[] query(String data,String table,String field,String user,String pwd){
- try {
- String []str = null;
- int i = 0;
- Connection conn = getConnection(data,user,pwd);
- String sql = "select "+ field +" from" + table +";" ;
- PreparedStatement pstmt = conn.prepareStatement(sql);
- ResultSet rs = pstmt.executeQuery();
- while (rs.next()) {
- str[i] = rs.getString(field);
- i++;
- }
- return str;
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- return null;
- }
- }
- public static void main(String[] args){
- String []str2 = null;
- String []str = null;
- String []str3 = null;
- boolean flage1 = true;
- boolean flage2 = true;
- boolean flage3 = true;
- System.out.println("请输入目标文件绝对路径:");
- Scanner sc = new Scanner(System.in);
- String path = sc.next();
- while(flage3){
- if (path!=null&&!path.equals("")) {
- flage3 = false;
- str = writeToDat(path);
- }else {
- System.out.println("输入不能为空");
- }
- }
- System.out.println("请输入所需连接的数据库名,表名,字段名(只能为一个),用户名,密码,用“#”隔开:");
- String strA = sc.next();
- while(flage1){
- if (strA!=null&&!strA.equals("")) {
- flage1 = false;
- while(flage2){
- if (strA.indexOf("#")>=0) {
- flage2 = false;
- str2 = strA.split("#");
- }else {
- System.out.println("您输入的格式有错,请重新输入");
- }
- }
- }else {
- System.out.println("输入不能为空");
- }
- }
- boolean b = insertInto(str2[0], str2[1], str2[2], str2[3], str2[4],str);
- if(b){
- System.out.println("插入成功!");
- }else {
- System.out.println("插入失败!");
- }
- str3 = query(str2[0], str2[1], str2[2], str2[3], str2[4]);
- for (int i = 0; i < str3.length; i++) {
- System.out.println(str3[i]);
- }
- }
- }
复制代码
java读取本地txt文件并插入数据库的更多相关文章
- sql 读取本地txt文件批量插入数据库
--导入 INSERT INTO [netmonsdb].[dbo].[keywordlist]([keyword]) SELECT * FROM OPENROWSET( BULK 'D:/xmsys ...
- JAVA读取本地html文件里的html文本
/** * 读取本地html文件里的html代码 * @param file File file=new File("文件的绝对路径") * @return */ public s ...
- Java读取本地json文件
背景 之前一直在弄一个Java爬虫,将爬取的信息保存到了数据库中.但这毕竟是一个课程设计,在设计前端GUI,展示数据的时候最开始是直接通过select语句从数据库中查找的,但我担心交给老师后,老师还要 ...
- Python 读取本地*.txt文件 替换 内容 并保存
# r 以只读的方式打开文件,文件的描述符放在文件的开头# w 打开一个文件只用于写入,如果该文件已经存在会覆盖,如果不存在则创建新文件 #路径path = r"D:\pytho ...
- java读取本地properties文件
package cn.edu.hbcf.pojo; import java.io.FileNotFoundException; import java.io.IOException; import j ...
- nodejs读取本地txt文件并输出到浏览器
var fs = require('fs'); var chrome=""; //同步执行 function tongbu(){ var data =fs.readFileSync ...
- js读取本地txt文件中的json数据
list.txt内容 [ {"optionKey":"1", "optionValue":"Canon in D"}, ...
- Java基础-输入输出-2.编写IoDemo.java的Java应用程序,程序完成的功能是:首先读取text.txt文件内容,再通过键盘输入文件的名称为iodemo.txt,把text.txt的内容存入iodemo.txt
2.编写IoDemo.java的Java应用程序,程序完成的功能是:首先读取text.txt文件内容,再通过键盘输入文件的名称为iodemo.txt,把text.txt的内容存入iodemo.txt ...
- Ajax实现xml文件数据插入数据库(二)--- ajax实现与jsp的数据交互。
在上一篇文章中我们成功得到了重新组织后的数据,接下来需要做的便是将数据插入到数据库中了.在与数据库打交道的过程中有一些方法是普遍的,我们将这些通用方法封装到一个DbUtil类中,以便复用,封装好的Db ...
随机推荐
- FZU 2105 Digits Count(按位维护线段树)
[题目链接] http://acm.fzu.edu.cn/problem.php?pid=2105 [题目大意] 给出一个序列,数字均小于16,为正数,每次区间操作可以使得 1. [l,r]区间and ...
- 【拓扑排序】CDOJ1635 琵琶弦上说相思,当时明月在,曾照彩云归
对于两个相邻的字符串 Si和Si+1 ,如果它们的前k-1位都相同,第k位不相同,那么,在字典序中 Si,k一定在 Si+1,k前面 建立有向边从 Si,k到 Si+1,k,进行拓扑排序 为了保证字典 ...
- Android程序设计
Android程序设计-1 要求安装 Android Stuidio 完成Hello World, 要求修改res目录中的内容,Hello World后要显示自己的学号,提交代码运行截图和码云Git链 ...
- bzoj 3384: [Usaco2004 Nov]Apple Catching 接苹果
双倍经验题... -->1750 dp!! 3384: [Usaco2004 Nov]Apple Catching 接苹果 Time Limit: 1 Sec Memory Limit: 12 ...
- 【泡咖啡1】linux下caffe编译以及python环境配置手记
caffe是一个深度学习的库,相信搞深度学习的话,不是用这个库就是用theano吧.要想使用caffe首先第一步就是要配置好caffe的环境.在这里,我主要说的是在debian的linux环境下如何配 ...
- fedora19/opensuse13.1 配置openvpn client
Date: 20140207Auth: Jin 1.install # yum -y install openvpn #zypper install openvpn 2.copy user key # ...
- GNU ARM 汇编指令
第一部分 Linux下ARM汇编语法尽管在Linux下使用C或C++编写程序很方便,但汇编源程序用于系统最基本的初始化,如初始化堆栈指针.设置页表.操作 ARM的协处理器等.初始化完成后就可以跳转到C ...
- Windows删除文件时出现,“正在准备 再循环”
初步分析这个问题是由于文件写入时,由于意外事情的发生(如,文件太大,正在写入时你取消了,而系统又没有来得及删除没有写完的数据等原因)没有写完. 错误的类型如下 出现此问题.当你删除不成时.返回系统根目 ...
- 【mybatis】mybatis中 返回map集合
关于mybatis返回map集合的操作: 1.mapper.xml中写一个查询返回map的sql <select id="findMap" parameterType=&qu ...
- 解决kylin报错:Failed to create dictionary on <db>.<table>, Caused by: java.lang.IllegalArgumentException: Too high cardinality is not suitable for dictionary
报错信息: 2017-05-13 15:14:30,035 DEBUG [pool-9-thread-10] dict.DictionaryGenerator:94 : Dictionary clas ...