几个月来,我一直在尝试自学 Java。我厌倦了那些教你如何说“你好”和其他 IMO 的书。
这是我的问题,我想将“制表符分隔”文本文件读入特定字段。有些字段是 int,有些是 String,有些是 int[] 数组。(我很难相信阅读一个简单的文件有这么难!)
如何获取令牌变量,其中记录(行)中的第一个令牌是“int”,第二个是“String”,3 到 5 是单独的“int”,接下来的 21 个是在“int”数组中 [ ]?
在此先感谢您的帮助。
package viewOfGolfSystem;
import java.io.File;
import java.io.FileReader;
import java.util.Scanner;
import javax.swing.JFileChooser;
import javax.swing.filechooser.FileNameExtensionFilter;
class TextDataCheck {
static public void main(String args[]) throws Exception {
JFileChooser chooser = new JFileChooser();
FileNameExtensionFilter filter = new FileNameExtensionFilter(
"TXT and CSV files", "txt", "csv");
chooser.setFileFilter(filter);
int returnVal = chooser.showOpenDialog(chooser);
if (returnVal == JFileChooser.APPROVE_OPTION) {
chooser.addChoosableFileFilter(filter);
chooser.showOpenDialog(null);
File f = chooser.getSelectedFile();
String filename = f.getAbsolutePath();
// should return the filename(i.e.path)
FileReader flr = new FileReader(filename);
Scanner sInput = new Scanner(flr).useDelimiter("\t");
while (sInput.hasNext()) {
System.out.println(sInput.next());
}
sInput.close();
} else {
System.out
.println("File chosen is not an approved option. Try again\n");
}
}
}