从文本文件读取数据存储到数据库

 ReadFile.java

package file;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
//读取文件类ReadFile
public class ReadFile {
//读取文件类ReadFile的构造方法
ReadFile(String tableName,String filePath) throws IOException,SQLException{
//创建数据库连接对象;调用同一个包中类DBUtil中的getConnection()方法
Connection conn=DBUtil.getConnection();
//sql语句
String sql="insert into "+tableName+"(id,username,password) values(?,?,?)";
//创建文件对象,filePath是文件的路径名称
File file=new File(filePath);
//在给定读取数据文件的情况下创建一个新的FileReader对象,FileReader对象是以字符流读取数据的而不是字节流。
FileReader fr=new FileReader(file);
//创建一个使用默认大小输入缓冲区的缓冲字符输入流(对象)
BufferedReader br=new BufferedReader(fr);
String line;
//声明int类型变量count;用于记录向数据库中添加数据的条数
int count=0;
  • 4
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,这是一个关于Java读取文件存储数据库的问题。我会尽力回答你的问题,下面是我的回答: 首先,你需要创建一个地图数据文件,可以使用文本编辑器创建一个以逗号分隔的文本文件,每行代表一个地图节点,每个节点有唯一的ID和经纬度坐标。例如: 1,39.903056,116.391944 2,39.902222,116.393056 3,39.901389,116.394167 然后,你可以使用Java的FileReader和BufferedReader类来读取地图数据文件,并将数据存储数据库。下面是一个示例代码: ``` import java.io.BufferedReader; import java.io.FileReader; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; public class MapDataImporter { public static void main(String[] args) { String filename = "mapdata.txt"; String jdbcUrl = "jdbc:mysql://localhost:3306/mydb"; String username = "root"; String password = "123456"; try (Connection conn = DriverManager.getConnection(jdbcUrl, username, password); PreparedStatement pstmt = conn.prepareStatement("INSERT INTO mapdata (id, lat, lng) VALUES (?, ?, ?)")) { FileReader fr = new FileReader(filename); BufferedReader br = new BufferedReader(fr); String line; while ((line = br.readLine()) != null) { String[] fields = line.split(","); int id = Integer.parseInt(fields[0]); double lat = Double.parseDouble(fields[1]); double lng = Double.parseDouble(fields[2]); pstmt.setInt(1, id); pstmt.setDouble(2, lat); pstmt.setDouble(3, lng); pstmt.executeUpdate(); } br.close(); fr.close(); } catch (Exception e) { e.printStackTrace(); } } } ``` 在这个示例代码,我们使用了Java的JDBC API连接到MySQL数据库,并使用PreparedStatement对象执行插入操作。我们读取地图数据文件的每一行,并将其分割成ID、纬度和经度三个字段,然后将其插入到数据库。 当然,在实际情况,你需要根据具体的需求来修改代码,例如修改数据库连接字符串、表名和字段名等等。希望这个回答对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值