フォーマット変換クエリーデータベース読み書きファイル


変換前のフォーマット:1894297716、荊州
変換後のフォーマット:insert into TA_INFO(ENTITY_ID,PREFIX)values('GUANGD', '861893425');
クエリー・データベースのデータは次のとおりです:省、区番
import java.io.File;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.PrintWriter;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
//import java.sql.Statement;

import com.lj.oracle.vo.AreaRoute;

public class TxtWriter {
	 public static void main(String[] args)   
	    {   
		    String DBDRIVER = "oracle.jdbc.driver.OracleDriver" ;
			String DBURL = "jdbc:oracle:thin:@localhost:1521:ffcs" ;
			String DBUSER = "scott" ;
			String DBPASS = "tiger" ;
			Connection conn = null ;
			PreparedStatement psmt =null;
			ResultSet rs = null;
			StringBuffer sb=new StringBuffer("");   
	        String desFile = "C:\\route.txt";//       
	        AreaRoute ar =null;
				try{
					Class.forName(DBDRIVER);					
				}catch(Exception e){
					System.out.println("oracle      !");
					e.printStackTrace() ;
				}
				
				try {
					conn = DriverManager.getConnection(DBURL,DBUSER,DBPASS) ;
					//Statement s = conn.createStatement();
					if (conn != null) {
						System.out.println("        :" + conn.getCatalog());
						}
					//String sql = "select area_id,entity_id from  area_route where area_id =?";
					//psmt = conn.prepareStatement(sql);
					//ResultSet rs = psmt.executeQuery(sql);
					//1894297,716,  
			    	//insert into TA_INFO(ENTITY_ID,PREFIX)values('GUANGD', '861893425');			       
			        //    ---       
			        try{   
			            FileReader reader = new FileReader("C:"+File.separator+"189.txt");   
			            BufferedReader br = new BufferedReader(reader);   
			            PrintWriter out = new PrintWriter(
		            	     new FileWriter(
		            	       new File(desFile)));
			            String line = null;   
			           // int i=1,j=1;
			            while((line = br.readLine()) != null) {   
			            	String[] strs = line.split(",");
			            	String route ="86"+strs[0];
				    		String area ="0"+strs[1];
				    		String sql = "select area_id,entity_id from  area_route where area_id =?";
				    		try{
								psmt = conn.prepareStatement(sql);
					    		psmt.setString(1, area);
					    		rs = psmt.executeQuery();//    
					    		if(rs.next()){
					    			ar = new AreaRoute();
					    			ar.setArea_id(rs.getString(1));
					    			ar.setEntity_id(rs.getString(2));
					    		}
					    		rs.close();
				    		}catch(Exception e){
				    			throw e;
				    		}finally{
				    			psmt.close();
				    		}			    		
			                sb.append("insert into TA_INFO(ENTITY_ID,PREFIX)values('"+ar.getEntity_id()+
			                "','"+route+"');" +'
'); System.out.println(" :"+i++); out.write("insert into TA_INFO(ENTITY_ID,PREFIX)values('"+ar.getEntity_id()+ "','"+route+"');" +"\r
"); // System.out.println(" :"+j++); //System.out.println(" 2:---"+ar.getArea_id()+","+route+","+ar.getEntity_id()); ar = null; } out.close(); br.close(); reader.close(); }catch(Exception e){ e.printStackTrace(); } } catch (SQLException e) { // TODO Auto-generated catch block System.out.println(" !"); e.printStackTrace(); } } }