Java-按行+限定條件分割文本

來源:互聯網
上載者:User

標籤:

package First;import java.io.BufferedReader;import java.io.File;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import java.io.InputStreamReader;public class DealFile {public static void main(String[] args) throws Exception{BufferedReader in = new BufferedReader(new InputStreamReader(System.in));//鍵入文本名稱String fileName = in.readLine();FileManager source = new FileManager(fileName);String head = source.nextWord();String word = null;int count = 0;//int n = 0;String n = "-checkIn";fileName = fileName.substring(0, fileName.length()-4);FileWriter w = null;//以逗號和分行符號為分割String regex = ""+','+"|"+'\n';while((word = source.nextWord()) != null){String[] strs = word.split(regex);//不符合條件if(strs.length < 3 || !strs[2].equals("check-in"))continue;if(count == 0){w = new FileWriter(fileName+n+".csv");w.write(head);}//System.out.println(n + ":" + count);w.write(word);++count;}w.close();}}class FileManager{int pos = 0;File f;FileReader reader;boolean flag = false;public FileManager(String filename)throws Exception{f = new File(filename);reader = new FileReader(f);}public String nextWord() throws IOException{if(flag)return null;char[] buf = new char[1];StringBuffer sb = new StringBuffer();int len;do{len = reader.read(buf);sb.append(buf[0]);}while('\n' != buf[0] && len != -1);if(len == -1)flag = true;return sb.toString();}}

Java-按行+限定條件分割文本

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.