import java.sql.*;
public class ReadFromFile {
/**
* 以行为单位读取文件,常用于读面向行的格式化文件
* @param fileName 文件名
*/
public static void readFileByLines(String fileName){
File file = new File(fileName);
BufferedReader reader = null;
try {
//--------------------------------------------------------------------------
Connection con;
Statement stmt;
ResultSet rs;
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");//改成你的驱动
con = DriverManager.getConnection("jdbc:odbc:meritlinedb");//改成你的DB
PreparedStatement pstmt=con.prepareStatement("insert into sale (id,name,sex) values(?,?,?)");//用PreparedStatement,速度快十倍
//--------------------------------------------------------------------------
System.out.println("以行为单位读取文件内容,一次读一整行:");
reader = new BufferedReader(new FileReader(file));
String tempString = null;
int line = 1;
//一次读入一行,直到读入null为文件结束
while ((tempString = reader.readLine()) != null){
//显示行号
System.out.println("line " + line + ": " + tempString);//这里可以放你要处理的字符串的语句
xxxx1="";
xxxx2="";
xxxx3="";//用你自己的方法得到这三个(xxxx1,xxxx2,xxxx3)
//--------------------------------------------
pstmt.setString(1,xxxx1);
pstmt.setString(2,xxxx2);
pstmt.setString(3,xxxx3);
pstmt.executeUpdate();//写入数据库
//--------------------------------------------
line++;
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
} finally {
if (reader != null){
try {
reader.close();
} catch (IOException e1) {
}
}
}
}
public static void main(String[] args) {
String fileName = "C:/temp.txt";
ReadFromFile.readFileByLines(fileName);
}
}