我必须使用文件对话框读取一个 txt 文件。它对我有用,但我有一个 if 语句,它应该忽略(“/”)、空行和(“[”)。 if 语句不起作用,输出只是 txt 文件中的原始数据,我该如何解决。下面是完整的方法。
我期望txt文件的数据没有“/”和“[”
public void readToolData() { Frame myFrame = new Frame(); FileDialog fileName = new FileDialog(myFrame, "Open", FileDialog.LOAD); fileName.setDirectory("/"); fileName.setVisible(true);
if (fileName != null) {
String filePath = fileName.getDirectory() + fileName.getFile();
System.out.println("selected file:" + fileName);
File fileData = new File(filePath);
String typeOfData = "";
try {
// reading the file line by line scanner
Scanner read = new Scanner(fileData);
while (read.hasNextLine()) {
String lineOfText = read.nextLine().trim();
System.out.println(lineOfText);
// checking non empty or non comment | added ! to the or condition
if (!lineOfText.startsWith("/") && !lineOfText.startsWith("[") || lineOfText.isEmpty())
{
typeOfData = lineOfText;
Scanner lineReader = new Scanner(lineOfText).useDelimiter(",");
Tool t = new Tool();
this.storeTool(t);
} } catch (FileNotFoundException e) { System.out.println(e.getMessage()); } } else { System.out.println("Error! No file selected!"); } }