本文目錄一覽:
如何用java解析CSV文件
思想:先獲取csv文件的路徑,通過BufferedReader類去讀該路徑中的文件,使用readLine方法進行逐行讀取。
注意:使用readLine方法後會自動轉到下一行。因此在判斷是否為空後得先將讀取到的內容賦值給一變數,在循環中使用該變數即可。
public static void main(String[] args)
{
File csv = new File(“C:\\Users\\chenxumin\\Desktop\\Result.csv”); // CSV文件路徑
BufferedReader br = null;
try
{
br = new BufferedReader(new FileReader(csv));
} catch (FileNotFoundException e)
{
e.printStackTrace();
}
String line = “”;
String everyLine = “”;
try {
ListString allString = new ArrayList();
while ((line = br.readLine()) != null) //讀取到的內容給line變數
{
everyLine = line;
System.out.println(everyLine);
allString.add(everyLine);
}
System.out.println(“csv表格中所有行數:”+allString.size());
} catch (IOException e)
{
e.printStackTrace();
}
}
java讀取csv文件
import java.io.BufferedReader;
import java.io.FileReader;
import java.util.*;
public class Test{
public static void main(String[] args) {
HashtableString, String[] dict = new HashtableString, 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.arraycopy(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;idd.length;i++) {
System.out.print(dd[i]+”\t”);
}
System.out.println();
}
}
catch (Exception e) {
e.printStackTrace();
}
}
}
如何使用eclipse編寫java程序讀取csv文件中
java有專門操作CSV文件的類和方法。java開源框架csvreader提供了一個輕量級的、簡單方便的統一操作介面可用。要使用CsvReader,CsvWriter需要下載一個javacsv.jar導入到項目中才行,在項目上點擊右鍵–屬性–庫–添加jar文件,選擇javacsv.jar文件即可,然後在程序中用import
com.csvreader.CsvReader,import com.csvreader.CsvWriter導入即可。
示範代碼:
package test;
import com.csvreader.CsvReader;
import com.csvreader.CsvWriter;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class readandwrite {
public static void main(String[] args) throws IOException {
String [] str = {“省”,”市”,”區”,”街”,”路”,”里”,”幢”,”村”,”室”,”園”,”苑”,”巷”,”號”};
String inString = “”;
String tmpString = “”;
File inFile = new File(“C://in.csv”); // 讀取的CSV文件
File outFile = new File(“C://outtest.csv”);//輸出的CSV文
try {
BufferedReader reader = new BufferedReader(new FileReader(inFile));
BufferedWriter writer = new BufferedWriter(new FileWriter(outFile));
CsvReader creader = new CsvReader(reader, ‘,’);
CsvWriter cwriter = new CsvWriter(writer,’,’);
while(creader.readRecord()){
inString = creader.getRawRecord();//讀取一行數據
for(int i = 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(String str)方法來寫數據,則要用cwriter.endRecord()方法來實現換行
//cwriter.endRecord();//換行
cwriter.flush();//刷新數據
}
creader.close();
cwriter.close();
} catch (FileNotFoundException ex) {
ex.printStackTrace();
}
}
}
java 讀取csv發送 foxmail
CSV(CommaSeparatedValue),Foxmail和Outlook導出的地址本都可以是csv文件。CsvJdbc提供了Java訪問csv文件的的JDBC驅動,它其實是把一個csv文件當做一個資料庫表來操作,提供簡單的查詢。在發送foxmail的時候比較方便而已。
原創文章,作者:TRTL,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/131029.html