Java 将单个csv行对象存储到数组中
嘿,我这里有一段代码试图读取.csv文件中的一行: 行=新仓库项目[]Java 将单个csv行对象存储到数组中,java,arrays,object,csv,java-io,Java,Arrays,Object,Csv,Java Io,嘿,我这里有一段代码试图读取.csv文件中的一行: 行=新仓库项目[] public void readCSV(String filename) { FileInputStream fileStrm = null; InputStreamReader rdr; BufferedReader bufRdr; int lineNum; String line; try { fileStrm = new FileInputStream(filename); r
public void readCSV(String filename) {
FileInputStream fileStrm = null;
InputStreamReader rdr;
BufferedReader bufRdr;
int lineNum;
String line;
try {
fileStrm = new FileInputStream(filename);
rdr = new InputStreamReader(fileStrm);
bufRdr = new BufferedReader(rdr);
numRows = 0;
line = bufRdr.readLine();
while (line != null) {
rows[numRows] = line;
numRows++;
line = bufRdr.readLine();
}
fileStrm.close();
}
catch (IOException e) {
if (fileStrm != null) {
try {
fileStrm.close();
} catch (IOException ex2) {}
}
System.out.println("Error in file processing: " + e.getMessage());
}
}
在行[numRows]=行上
我试图将行存储到一个对象数组中(我已经预先制作了一个包含字符串数组和列数的对象)
我不完全确定如何在我的对象中存储我试图读取的单行
任何帮助都将不胜感激:)如果您使用CSV库来实现这一点,您的生活将轻松得多。使用jackson,将CSV读入对象数组非常简单 例如:
CsvMapper mapper = new CsvMapper();
mapper.enable(CsvParser.Feature.WRAP_AS_ARRAY);
File csvFile = new File("input.csv"); // or from String, URL etc
MappingIterator<Object[]> it = mapper.reader(Object[].class).readValues(csvFile);
CsvMapper映射器=新的CsvMapper();
enable(CsvParser.Feature.WRAP_为_数组);
File csvFile=新文件(“input.csv”);//或者来自字符串、URL等
MappingIterator it=mapper.reader(Object[].class).readValues(csvFile);
有关在java中解析CSV的更多信息,请参见此处:代码段中缺少
行的声明。我们需要看一下。你需要告诉我们什么是行。它是一个字符串[]
?一个字符串[][]
?