package shipx;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import tool.*;
public class pro {
String[] data=new String[5000];
int s,datanumber;
int number;
String[] memo=new String[5000];
String[] dic=new String[5000];
int dicnumber;
int trs;
int creditnumber;
String[] credit=new String[50];
String[] style=new String[50];
int[] strlong=new int[50];
String[][] datax=new String[50000][10];
public static void main(String[] args) {
pro test=new pro();
}
pro(){
creditnumber=7;
credit[1]="year";
credit[2]="month";
credit[3]="area";
credit[4]="v1";
credit[5]="v2";
credit[6]="v3";
credit[7]="v4";
style[1]="INTEGER";
style[2]="INTEGER";
style[3]="INTEGER";
style[4]="VARCHAR";
style[5]="VARCHAR";
style[6]="VARCHAR";
style[7]="VARCHAR";
strlong[5]=50;
strlong[4]=50;
strlong[6]=50;
strlong[7]=50;
String db,tab;
db="land";
tab="land";
table sub=new table();
sub.credit=credit;
sub.creditnumber=creditnumber;
sub.style=style;
sub.strlong=strlong;
sub.makedata(db,tab);
File f=new File("data");
String[] fx=f.list();
number=fx.length;
System.out.println(number);
int sx,t;
t=0;
for(s=0;s<number;s++){
readfile sub3=new readfile();
sub3.makedata("data/"+fx[s],"UTF-8");
data=sub3.data;
datanumber=sub3.datanumber;
String str,y1,m1;
String c1,c2,c3;
int h,dx,pp;
for(sx=1;sx<datanumber+1;sx++){
catchword sub2=new catchword();
datax[sx][1]=sub2.makedata(data[sx],"year");
datax[sx][2]=sub2.makedata(data[sx],"month");
datax[sx][3]=sub2.makedata(data[sx],"code_area");
datax[sx][4]=sub2.makedata(data[sx],"v1");
datax[sx][5]=sub2.makedata(data[sx],"v2");
datax[sx][6]=sub2.makedata(data[sx],"v3");
datax[sx][7]=sub2.makedata(data[sx],"v4");
}
insert sub21=new insert();
sub21.creditnumber=creditnumber;
sub21.style=style;
sub21.data=datax;
sub21.datanumber=datanumber;
sub21.makedata(db,tab);
System.out.println(s);
}
}
}
package shipx;
import java.sql.*;
import java.io.*;
class insert {
Connection dbx;
Statement stx;
String sqx;
ResultSet rsx;
String[] style=new String[50];
int creditnumber;
String[][] data=new String[5000][50];
int datanumber;
int p;
void makedata(String db,String tab) {
String str;
int s,sx;
for(p=1;p<datanumber+1;p++){
str="";
for(sx=1;sx<creditnumber;sx++){
if(style[sx].equals("VARCHAR"))str=str+change(data[p][sx])+",";
if(style[sx].equals("INTEGER"))str=str+data[p][sx]+",";
}
sx=creditnumber;
if(style[sx].equals("VARCHAR"))str=str+change(data[p][sx]);
if(style[sx].equals("INTEGER"))str=str+data[p][sx];
String url = "jdbc:h2:"+db+";create=true";
String usr = "";
String pwd = "";
try{
Class.forName("org.h2.Driver");
dbx = DriverManager.getConnection(url, usr, pwd);
stx = dbx.createStatement();
String sql = "INSERT INTO "+tab+" VALUES("+str+")";
int num = stx.executeUpdate(sql);
stx.close();
} catch (Exception ex) { ex.printStackTrace();}
}
}
String change(String str){
String str1;
str1="'"+str+"'";
return str1;
}
}
package shipx;
import java.sql.*;
public class table{
Connection dbx;
Statement stx;
String sqx;
ResultSet rsx;
int creditnumber;
String[] credit=new String[50];
String[] style=new String[50];
int[] strlong=new int[50];
void makedata(String db,String tab){
String str;
str="";
int s;
for(s=1;s<creditnumber;s++){
if(style[s].equals("INTEGER"))str=str+credit[s]+" "+style[s]+",";
if(style[s].equals("VARCHAR"))str=str+credit[s]+" "+style[s]+"("+strlong[s]+"),";
}
s=creditnumber;
if(style[s].equals("INTEGER"))str=str+credit[s]+" "+style[s];
if(style[s].equals("VARCHAR"))str=str+credit[s]+" "+style[s]+"("+strlong[s]+")";
String url = "jdbc:h2:"+db+";create=true";
String usr = "";
String pwd = "";
try{
Class.forName("org.h2.Driver");
dbx = DriverManager.getConnection(url, usr, pwd);
stx = dbx.createStatement();
String sqx = "CREATE TABLE " +tab+"("+str+")";
stx.executeUpdate(sqx);
} catch (Exception ex) { ex.printStackTrace();}
}
}
最終更新:2015年08月26日 00:58