1. 程式人生 > 實用技巧 >java處理Txt檔案並且存入資料庫

java處理Txt檔案並且存入資料庫

  txt檔案是儲存在電腦上,思路是:

  先將txt按照每一行讀取,將讀到的檔案存在list資料中。然後每次迴圈將list的每一個數據進行按照你的條件拆分,我是按照“,”進行拆分的。

  先看一下我的txt檔案:

這是拆分後的結果:

package com.mysql;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;

import java.io.InputStreamReader;
import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Locale; import com.service.MessageService; import com.sun.org.apache.xerces.internal.impl.xpath.regex.ParseException; public class testmysql { public static ArrayList<String> getfile(String filepath){
try{ String temp = null; File f = new File(filepath); //指定讀取編碼用於讀取中文 InputStreamReader read = new InputStreamReader(new FileInputStream(f),"utf-8"); ArrayList<String> readList = new ArrayList<String>(); BufferedReader reader
=new BufferedReader(read); //bufReader = new BufferedReader(new FileReader(filepath)); while((temp=reader.readLine())!=null &&!"".equals(temp)){ readList.add(temp); } read.close(); return readList; }catch (Exception e) { e.printStackTrace(); } return null; } //改變時間的格式 public static String parseDate(String dateStr) throws java.text.ParseException{ SimpleDateFormat input_date = new SimpleDateFormat("dd/MMM/yyyy:HH:mm:ss Z", Locale.ENGLISH); SimpleDateFormat output_date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String finalDate = ""; try { Date parse_date = input_date.parse(dateStr); finalDate = output_date.format(parse_date); } catch (ParseException e) { e.printStackTrace(); } return finalDate; } public static void main(String[] args) throws java.text.ParseException { //txt檔案讀取 ArrayList<String> list=getfile("D:\\result.txt"); //List<String> list1=new ArrayList<String>(); int num=list.size(); for (int i = 0; i < num; i++) { //System.out.println(list.get(i)); if (list.get(i)!=null) { String[] s=list.get(i).split(","); String data=parseDate(s[1]); //txt每行可以分割成6個字串存到是s[], String sql = "insert into detailresult(ip,time,day,traffic,type,id) values('" + s[0] + "','" +data + "','" +s[2] + "','" + s[3] +"','" + s[4] +"','" + s[5] + "')"; MessageService.add(sql); } } System.out.println("新增成功"); } }