通过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; }
}
