我正在尝试读取一个文本文件,其中有一个标签空间作为分隔符但是其中有一些值留空,如何在读取文件时将该值保留为空白。请检查下面的代码
FileReader file = new FileReader(new File("File.dat"));
BufferedReader br = new BufferedReader(file);
String temp = br.readLine();
while (temp != null) {
temp = br.readLine();
System.out.println(temp);
}
请帮我指出留空的值。
答案 0 :(得分:0)
这看起来像一个CSV文件,但不是逗号,而是标签。您可以使用opencsv来读取文件。
CSVReader reader = new CSVReader(new FileReader("file.txt"), '\t');
String [] nextLine;
while ((nextLine = reader.readNext()) != null) {
// nextLine[] is an array of values from the line
System.out.println(nextLine[0] + nextLine[1] + "etc...");
}
数组中空值为空字符串的列。
或者更简单:
CSVReader reader = new CSVReader(new FileReader("file.txt"), '\t');
List<String[]> all = reader.readAll();
答案 1 :(得分:0)
使用@HunterMcMillen提示:
FileReader file = new FileReader(new File("File.dat"));
BufferedReader br = new BufferedReader(file);
String temp = br.readLine();
while (temp != null) {
String[] tabSeparatedArray = temp.split("\t")
foreach(String tabElement : tabSeparatedArray){
if (tabElement.trim().length <= 0){
//here the element is blank... do whatever you want!!!!
}
}
System.out.println(temp);
temp = br.readLine();
}