通过Java读取csv文件内容

1、通过FileReader(String fileName)读取整个文件,并通过BufferedReader(Reader in)作为每行的缓冲; 2、在通过readLine()读取每行内容,通过空格作为分隔符,每行转为数组,并存在List<String[]>列表中; 3、最后打印 csv文件中的内容。

    csv 文件内容如下:
clk 101 111
reset 102 112
test 103 113
Mode1 104 114
Mode0 105 115
    打印的代码如下:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
public class transform {
          
   
    List<String[]> ReadMethod(){
          
   
        String File = "C:/Users/zeal.zhang/Documents/ExamB/src/Data/1.csv";
        String line = "";
        String SplitBy = " ";
        String[] Line;
        List<String[]> BikeDataList = new ArrayList<>();
        try (BufferedReader br = new BufferedReader(new FileReader(File))) {
          
   
            while ((line = br.readLine()) != null) {
          
   
                Line = line.split(SplitBy);
                BikeDataList.add(Line);
                System.out.println("signal "+Line[0]+" {
	site 1 { pogo = "+Line[1]+"; }" +
                                   "
	site 2 { pogo = "+Line[2]+"; }
}");
            }
        } catch (IOException e) {
          
   
            e.printStackTrace();
        }
        return BikeDataList;
    }
    public static void main(String[] args) {
          
   
        new transform().ReadMethod();
    }
    输出的内容如下:
signal clk {
          
   
	site 1 {
          
    pogo = 101; }
	site 2 {
          
    pogo = 111; }
}
signal reset {
          
   
	site 1 {
          
    pogo = 102; }
	site 2 {
          
    pogo = 112; }
}
signal test {
          
   
	site 1 {
          
    pogo = 103; }
	site 2 {
          
    pogo = 113; }
}
signal Mode1 {
          
   
	site 1 {
          
    pogo = 104; }
	site 2 {
          
    pogo = 114; }
}
signal Mode0 {
          
   
	site 1 {
          
    pogo = 105; }
	site 2 {
          
    pogo = 115; }
}
经验分享 程序员 微信小程序 职场和发展