求救:編寫java程序 提取txt文本中的數字,存入到oracle數據庫(自建)中



文本:
 
中國有140000000人口,平均年齡78.3歲
有4個直轄市,
這里有14首歌,是5個人做的
日本有25000000人口,平均年齡80歲
有9個直轄市,
據悉,去年,福州國企共承接178項總投資1911億元的投資項目。其中,交建集團、
城鄉建總、水務投資、新榕城建和房地產發展集團等5家公司就承接了172項投資項
目,屬於五大戰役項目的63項,總投資1178億元,分別占項目數和總投資的35.4%和
62%。
 

現在已經可以運行打印出來,但還不清楚如何存入到oracle數據庫中(存入格式為  第X行,第X個)。最近剛開始學基礎的,很多都不會,汗。。。
望高手能夠幫忙解答下,謝謝~


付代碼:


import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.LineNumberReader;
import java.util.regex.Matcher;
import java.util.regex.Pattern;


public class ReadSelectedLine { 
static {
System.out.println("第X行\t第X個\t數字");
}
    static void readLineVarFile(String lineStr, int lineNumber) throws IOException { 
    StringBuffer strBuffer = new StringBuffer();
            int l = lineStr.length();
int indexpost = 0;
for(int i=0;i<l;i++){
int ca = lineStr.charAt(i);
    if((ca>47 && ca<58) || ca==46){
   strBuffer.append(String.valueOf(lineStr.charAt(i)));
}else{
   if(strBuffer!=null){
       String temp = strBuffer.toString();
   if(temp!=null && !"".equals(temp)){
  System.out.println(lineNumber+"\t"+(++indexpost)+"\t"+temp);
   }
   }
   strBuffer = new StringBuffer();
}
}
    }  
    // 文件內容的總行數。    
    static int getTotalLines(String fileName) throws IOException { 
            BufferedReader in = new BufferedReader(new InputStreamReader( 
                            new FileInputStream(fileName))); 
            LineNumberReader reader = new LineNumberReader(in); 
            String s = reader.readLine(); 
            int lines = 0; 
            while (s != null) { 
                    lines++; 
                    s = reader.readLine(); 
            } 
            reader.close(); 
            in.close(); 
            return lines; 
    } 
     
    public static void main(String[] args) throws IOException { 
             
            // 讀取文件    
            String fileName = "d:/111.txt"; 
             
            // 獲取文件的內容的總行數    
            int totalNo = getTotalLines(fileName); 
            //System.out.println("There are "+totalNo+ " lines in the text!"); 
             
            BufferedReader reader = new BufferedReader(new InputStreamReader( 
                    new FileInputStream(fileName)));
            String lineStr;
            for(int i=0;i<totalNo; i++){
             lineStr = reader.readLine(); 
             readLineVarFile(lineStr,i+1);
            }
                   
    } 

5 个解决方案

#1


既然你都打印出來了,難道不能用一個字符串拼接起來,拼接成功,成功后,寫一個插入語句,樓主不會?我不信,JDBC會不?我不信樓主不會。

#2


呃。。。這個是請教別人的,目前也是沒全部看懂,迷迷糊糊的。

JDBC連接,百度過了,大概知道,還沒連接過。

請問是直接寫SQL語句中的 Insert么。。。

最近一起學JAVA和ORACLE,幾乎是從零開始,所以這些基礎的,還真不怎么會。。。

望求指教,感激不盡~

#3


引用 1 樓 wqlongxiong 的回復:
既然你都打印出來了,難道不能用一個字符串拼接起來,拼接成功,成功后,寫一個插入語句,樓主不會?我不信,JDBC會不?我不信樓主不會。



呃。。。這個是請教別人的,目前也是沒全部看懂,迷迷糊糊的。

JDBC連接,百度過了,大概知道,還沒連接過。

請問是直接寫SQL語句中的 Insert么。。。

最近一起學JAVA和ORACLE,幾乎是從零開始,所以這些基礎的,還真不怎么會。。。

望求指教,感激不盡~

#4


中國有140000000人口, 平均年齡78.3歲

不會吧。。

#5


應該是平均壽命,目前大概73 。。。
引用 4 樓 bill0605030109 的回復:
中國有140000000人口,平均年齡78.3歲

不會吧。。

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com