導航:首頁 > 文件教程 > java讀取cvs文件

java讀取cvs文件

發布時間:2024-08-09 06:39:29

1. java操作csv文件

cvs格式實際上就是字元串,直接通過英文」,「來進行的間隔顯示,所以直接寫入的時候直接在流中添加英文標點逗號即可。
實現思路:就是將需要保留的內容寫入另外一個cvs文件中在滿足條件處進行增加、刪除、修改操作。
可以通過BufferedReader 流的形式進行流緩存,之後通過readLine方法獲取到緩存的內容。
BufferedReader bre = null;
OutputStreamWriter pw = null;//定義一個流
try {
String file = "D:/test/test.xml";
bre = new BufferedReader(new FileReader(file));//此時獲取到的bre就是整個文件的緩存流
pw = new OutputStreamWriter(new FileOutputStream(「D:/New.cvs」),"GBK");//確認流的輸出文件和編碼格式,此過程創建了「test.cvs」實例
while ((str = bre.readLine())!= null) // 判斷最後一行不存在,為空結束循環
{
if(!str.indexOf("<end>")){//判斷如果不滿足cvs行條件就刪除
pw.write(str);//將要寫入文件的內容,可以多次write
}
};
bre.close();
pw.close();//關閉流
備註:文件流用完之後必須及時通過close方法關閉,否則會一直處於打開狀態,直至程序停止,增加系統負擔。

2. 求個java讀取csv文件並輸出的程序

要使用CsvReader,CsvWriter需要下載一個javacsv.jar導入到項目中

packagetest;importcom.csvreader.CsvReader;importcom.csvreader.CsvWriter;importjava.io.BufferedReader;importjava.io.BufferedWriter;importjava.io.File;importjava.io.FileNotFoundException;importjava.io.FileReader;importjava.io.FileWriter;importjava.io.IOException;publicclassreadandwrite{publicstaticvoidmain(String[]args)throwsIOException{String[]str={"省","市","區","街","路","里","幢","村","室","園","苑","巷","號"};StringinString="";StringtmpString="";FileinFile=newFile("C://in.csv");//讀取的CSV文件FileoutFile=newFile("C://outtest.csv");//輸出的CSV文try{BufferedReaderreader=newBufferedReader(newFileReader(inFile));BufferedWriterwriter=newBufferedWriter(newFileWriter(outFile));CsvReadercreader=newCsvReader(reader,',');CsvWritercwriter=newCsvWriter(writer,',');while(creader.readRecord()){inString=creader.getRawRecord();//讀取一行數據for(inti=0;i<str.length;i++){tmpString=inString.replace(str[i],","+str[i]+",");inString=tmpString;}//第一個參數表示要寫入的字元串數組,每一個元素佔一個單元格,第二個參數為true時表示寫完數據後自動換行cwriter.writeRecord(inString.split(","),true);//注意,此時再用cwriter.write(inString)方法寫入數據將會看到只往第一個單元格寫入了數據,「,」沒起到調到下一個單元格的作用//如果用cwriter.write(Stringstr)方法來寫數據,則要用cwriter.endRecord()方法來實現換行//cwriter.endRecord();//換行cwriter.flush();//刷新數據}creader.close();cwriter.close();}catch(FileNotFoundExceptionex){ex.printStackTrace();}}}

3. 如何使用eclipse編寫java程序讀取csv文件中

package ImportTestData;
import java.io.BufferedReader;
import java.io.FileReader;
public class Test {
public static void main(String[] args) {
try {
BufferedReader reader = new BufferedReader(new FileReader("a.csv"));//換成你的文件名
reader.readLine();//第一行信息,為標題信息,不用,如果需要,注釋掉
String line = null;
while((line=reader.readLine())!=null){
String item[] = line.split(",");//CSV格式文件為逗號分隔符文件,這里根據逗號切分

String last = item[item.length-1];//這就是你要的數據了
//int value = Integer.parseInt(last);//如果是數值,可以轉化為數值
System.out.println(last);
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

4. java讀取CSV文件

可以通過流的形式讀取到所有內容,之後在轉換成元素的形式進行實現。舉例:
import java.io.BufferedReader;
import java.io.FileReader;
import java.util.*;

public class Test{
public static void main(String[] args) {
Hashtable<String, String[]> dict = new Hashtable<String, String[]>();
try {
BufferedReader reader = new BufferedReader(new FileReader("test.csv"));
String line = null;
while((line=reader.readLine())!=null){
String item[] = line.split(",");
String item2[] = new String[19];
System.array(item,1,item2,0,19);
dict.put(item[0],item2);
}
Enumeration e2 = dict.keys();
while (e2.hasMoreElements()) {
String key = (String) e2.nextElement();
System.out.println(key);
String[] dd = (String[])dict.get(key);
for (int i=0;i<dd.length;i++) {
System.out.print(dd[i]+"\t");
}
System.out.println();
}
}
catch (Exception e) {
e.printStackTrace();
}
}
}

5. java 讀取csv文件里指定行列的值,比如讀取第三行第二列的值。

import java.io.BufferedReader;
import java.io.FileReader;
public class Test {
public void test(int row,int col){
try {
BufferedReader reader = new BufferedReader(new FileReader("C:\a.csv"));//換成你的文件名
// reader.readLine();//第一行信息,為標題信息,不用,如果需要,注釋掉
String line = null;
int index=0;
while((line=reader.readLine())!=null){
String item[] = line.split(" ");//CSV格式文件為逗號分隔符文件,這里根據逗號切分
if(index==row-1){
if(item.length>=col-1){
String last = item[col-1];//這就是你要的數據了
System.out.println(last);
}
}
//int value = Integer.parseInt(last);//如果是數值,可以轉化為數值
index++;
}
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* @param args
*/
public static void main(String[] args) {
Test test = new Test();
test.test(3, 2);
}
}

你的數據格式有問題,空格的個數不確定,沒辦法每行用空格分隔。以下是我調整後的數據格式每行的數據以一個空格分隔,test方法傳入的參數一次是,行,列:

1電機1

2WBS2

3PID3

4CP

5社供出

6原価実績

7社供WC

8外注費

9直材費

10自家製品

11直経費

12その他

13注殘

14注殘

閱讀全文

與java讀取cvs文件相關的資料

熱點內容
ps入門必備文件 瀏覽:348
以前的相親網站怎麼沒有了 瀏覽:15
蘋果6耳機聽歌有滋滋聲 瀏覽:768
怎麼徹底刪除linux文件 瀏覽:379
編程中字體的顏色是什麼意思 瀏覽:534
網站關鍵詞多少個字元 瀏覽:917
匯川am系列用什麼編程 瀏覽:41
筆記本win10我的電腦在哪裡打開攝像頭 瀏覽:827
醫院單位基本工資去哪個app查詢 瀏覽:18
css源碼應該用什麼文件 瀏覽:915
編程ts是什麼意思呢 瀏覽:509
c盤cad佔用空間的文件 瀏覽:89
不銹鋼大小頭模具如何編程 瀏覽:972
什麼格式的配置文件比較主流 瀏覽:984
增加目錄word 瀏覽:5
提取不相鄰兩列數據如何做圖表 瀏覽:45
r9s支持的網路制式 瀏覽:633
什麼是提交事務的編程 瀏覽:237
win10打字卡住 瀏覽:774
linux普通用戶關機 瀏覽:114

友情鏈接