導航:首頁 > 編程語言 > javacsv雙引號

javacsv雙引號

發布時間:2025-09-11 00:33:09

『壹』 用java導出CSV的問題!!!

我也正抄在做這樣的導出問題襲

1.如果數據中本身存在換行符號,那麼這條數據就會自動拆成2行

我想你只能在接受數據的時候,手動的把數據中的換行符號替換掉或者去掉

2.還有,這個導出的CSV文件的作用是往其他資料庫裡面導入,是不是用下面的格式也可以?

我想csv的格式沒有那麼多的限制,只要你在導入到資料庫的時候能得到你想要的數據就行了吧

『貳』 如何正確讀取csv文件

package xufei;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/*
* 文件規則
* Microsoft的格式是最簡單的。以逗號分隔的值要麼是「純粹的」(僅僅包含在括弧之前),
* 要麼是在雙引號之間(這時數據中的雙引號以一對雙引號表示)。
* Ten Thousand,10000, 2710 ,,"10,000","It's ""10 Grand"", baby",10K
* 這一行包含七個欄位(fields):
* Ten Thousand
* 10000
* 2710
* 空欄位
* 10,000
* It's "10 Grand", baby
* 10K
* 每條記錄佔一行
* 以逗號為分隔符
* 逗號前後的空格會被忽略
* 欄位中包含有逗號,該欄位必須用雙引號括起來。如果是全形的沒有問題。
* 欄位中包含有換行符,該欄位必須用雙引號括起來
* 欄位前後包含有空格,該欄位必須用雙引號括起來
* 欄位中的雙引號用兩個雙引號表示
* 欄位中如果有雙引號,該欄位必須用雙引號括起來
* 第一條記錄,可以是欄位名
*/
/**
*
タイトル: xufei.CSVAnalysis.java
*
說明:
*
著作権: Copyright (c) 2006
*
會社名: technodia
* @author 徐飛
* @version 1.0
* createDate Aug 11, 2008
* 修正履歴
* 修正日 修正者修正理由
*/
public class CSVAnalysis {
private InputStreamReader fr = null;
private BufferedReader br = null;
public CSVAnalysis(String f) throws IOException {
fr = new InputStreamReader(new FileInputStream(f));
}
/**
* 解析csv文件 到一個list中
* 每個單元個為一個String類型記錄,每一行為一個list。
* 再將所有的行放到一個總list中
* @return
* @throws IOException
*/
public List> readCSVFile() throws IOException {
br = new BufferedReader(fr);
String rec = null;//一行
String str;//一個單元格
List> listFile = new ArrayList>();
try {
//讀取一行
while ((rec = br.readLine()) != null) {
Pattern pCells = Pattern
.compile("(\"[^\"]*(\"{2})*[^\"]*\")*[^,]*,");
Matcher mCells = pCells.matcher(rec);
List cells = new ArrayList();//每行記錄一個list
//讀取每個單元格
while (mCells.find()) {
str = mCells.group();
str = str.replaceAll(
"(?sm)\"?([^\"]*(\"{2})*[^\"]*)\"?.*,", "$1");
str = str.replaceAll("(?sm)(\"(\"))", "$2");
cells.add(str);
}
listFile.add(cells);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
if (fr != null) {
fr.close();
}
if (br != null) {
br.close();
}
}
return listFile;
}
public static void main(String[] args) throws Throwable {
CSVAnalysis parser = new CSVAnalysis("c:/test2.csv");
parser.readCSVFile();
}
}

閱讀全文

與javacsv雙引號相關的資料

熱點內容
網路中常用的傳輸介質 瀏覽:518
文件如何使用 瀏覽:322
同步推密碼找回 瀏覽:865
樂高怎麼才能用電腦編程序 瀏覽:65
本機qq文件為什麼找不到 瀏覽:264
安卓qq空間免升級 瀏覽:490
linux如何刪除模塊驅動程序 瀏覽:193
at89c51c程序 瀏覽:329
怎麼創建word大綱文件 瀏覽:622
裊裊朗誦文件生成器 瀏覽:626
1054件文件是多少gb 瀏覽:371
高州禁養區內能養豬多少頭的文件 瀏覽:927
win8ico文件 瀏覽:949
仁和數控怎麼編程 瀏覽:381
項目文件夾圖片 瀏覽:87
怎麼在東芝電視安裝app 瀏覽:954
plc顯示數字怎麼編程 瀏覽:439
如何辨別假網站 瀏覽:711
寬頻用別人的賬號密碼 瀏覽:556
新app如何佔有市場 瀏覽:42

友情鏈接