java如何截取文本中的字符并存入数据库

时间:2024-05-19 13:30:24

以现代汉语词典为例,将字典里的词和词的意思放入数据库,以下是txt现代汉语词典的部分截取图

java如何截取文本中的字符并存入数据库

(1)主要用到的是split方法,和substring(i)

 stringObject.split( separator , limit ),stringObject被分解的对象,separator字符串或正则表达式对象,即在分割时使用的标识符,由以上文本可知为“】", limit用来限制返回数组中的元素个数;s.substring(i)截取s的第i个的字符;

(2)截取的代码如下

if(s.startsWith("【")) {
String[] w = s.split("】");//先分割
w[0]=w[0].substring(1);

String new_member = "";}

(3)存入数据库的代码如下

if(w.length >= 2) {
System.out.println(w[0]);
System.out.println(w[1]);
new_member="insert into zd1_copy(name,content) values('"+w[0]+"','"+w[1]+"')";
} else {
System.out.println(w[0]);
new_member="insert into zd1_copy(name,content) values('"+w[0]+"',' ')";
}
sql.executeUpdate(new_member);

}

(4)整体代码如下所示

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.sql.Connection;
import java.sql.DriverManager;
//import java.sql.ResultSet;
import java.sql.Statement;


public class txttomysql {
private static final String URL = "jdbc:mysql://localhost:3306/test";//jdbc:mysql//服务器地址/数据库名
    private static final String USER = "root";//用户名
    private static final String PASSWORD = "123456";//密码

    public static void main(String[] args) {
File file_name = new File("E:/现代汉语词典.txt");//创建文件路径
try {
Class.forName("com.mysql.jdbc.Driver");//加载驱动
Connection con = DriverManager.getConnection(URL,USER,PASSWORD);//加载数据库
Statement sql = con.createStatement();//数据库连接

InputStreamReader isr = new InputStreamReader(new FileInputStream(file_name));
//编码方式UTF-8,防止中文乱码
BufferedReader bufr = new BufferedReader(isr);
String s = null;//临时存储每行数据
while((s = bufr.readLine()) != null) {//遍历目标文档每行
//System.out.println(s);
if(s.startsWith("【")) {
String[] w = s.split("】");//先分割
w[0]=w[0].substring(1);
String new_member = "";
if(w.length >= 2) {
System.out.println(w[0]);
System.out.println(w[1]);
new_member="insert into zd1_copy(name,content) values('"+w[0]+"','"+w[1]+"')";
} else {
System.out.println(w[0]);
new_member="insert into zd1_copy(name,content) values('"+w[0]+"',' ')";
}
sql.executeUpdate(new_member);
}
}
bufr.close();
isr.close();
} catch (Exception e) {
e.printStackTrace();
}
}

}

(5)结果

java如何截取文本中的字符并存入数据库