DustinChu Blog

java-txt資料讀取存入SQL

java-txt資料讀取存入SQL

前言

最近實在太忙了.沒什麼時間更新blog.
本來打算寫專案過程可以抓時間學習python
主管最近突然跟我說10天要把舊ERP的一個員工教育訓練的程式移植出來.
由於舊ERP太爛了沒有用SQL..資料是儲存在txt..!!!
就只好寫個程式來匯入 由於時間太趕了..就不太注重細節趕快把這寫出來
如果是csv檔案的話稍微修改就可以用了!

txt資料

“345”|”456”|”xxxx”|4|12/05/11|12/05/11|0|””|0|””|”name”|12/06/01
先寫程式把資料的 “ | 這兩個符號先更改
改完如下

#345#@#456#@#xxxx#@4@12/05/11@12/05/11@0@##@0@##@#name#@12/06/01

java

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
import java.sql.Connection;
import java.sql.SQLException;
import javax.sql.DataSource;
import utils.sqlconnection;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.lang.reflect.Array;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class SQL extends sqlconnection
{
public static void main(String[] args)
{
try
{
java.sql.Connection conn;
try
{
conn = DriverManager.getConnection(CONNURL, SQL_NAME,SQL_PASSWORD);
PreparedStatement pstmt = conn.prepareStatement(SQL_INSERT);
FileReader fr = new FileReader(FILE_PATH);
BufferedReader brdFile = new BufferedReader(fr);
String strLine = null;
while ((strLine = brdFile.readLine()) != null)
{
strLine = strLine.replace("#", "");//先將資料夾裡面的#改成""
String[] array = strLine.split("@");// 因為是用"@"分開所以用split切開存入字串陣列
System.out.println(strLine);
for (int i = 0; i < array.length; i++)
{
// System.out.println(array[i]); 可以用來檢視分割的檔案是否正確
pstmt.setString(i+1,array[i]);
}
pstmt.execute();
}
} catch (FileNotFoundException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (SQLException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}

相關文章: