在java項目中如何對csv數(shù)據(jù)進行分割?相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
成都創(chuàng)新互聯(lián)公司于2013年開始,先為新興等服務建站,新興等地企業(yè),進行企業(yè)商務咨詢服務。為新興企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務解決您的所有建站問題。
java 分割csv數(shù)據(jù)的實例詳解
實際需要解析的csv中很多都是從excel中轉過來的,數(shù)據(jù)中本身包含了逗號的數(shù)據(jù)導致split的過程中發(fā)現(xiàn)數(shù)據(jù)對不上,因此,基于這種特性,重新寫了一個csv數(shù)據(jù)的分割方法:
實現(xiàn)代碼:
public static String[] split(String line) { Listlist = new ArrayList<>(); int start = 0; int end = -1; while(true) { start = end + 1; if(line.charAt(start) == '\"') { end = line.indexOf("\"", start ) + 1; } else { end = line.indexOf("," , start ); } if(end < 0) { //最后了 end = line.length() ; } String p1 = line.substring(start, end); list.add(p1); if(end >= line.length() - 1) { break; } } return list.toArray(new String[0]) ; }
利用的特性為:excel轉儲csv的時候,如果列值包含逗號會用雙引號括起來。
看完上述內(nèi)容,你們掌握在java項目中如何對csv數(shù)據(jù)進行分割的方法了嗎?如果還想學到更多技能或想了解更多相關內(nèi)容,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!