简单Java文本文件解析不正确

简单Java文本文件解析不正确,java,parsing,text,Java,Parsing,Text,我有一个简单的文本文件: type = "hello" number = 66 type = "hey" number = 77 我基本上只是检查文本文件中是否有字符串“type”,如果是,我还想得到值“hello”和“hey”,即类型。然而,我的程序根本不起作用,在检查文件中是否有“type”时,它总是打印no public static void main(String[] args) { if(args.length == 1) parseText(argv[0

我有一个简单的文本文件:

type = "hello"
number = 66

type = "hey"
number = 77
我基本上只是检查文本文件中是否有字符串“type”,如果是,我还想得到值“hello”和“hey”,即类型。然而,我的程序根本不起作用,在检查文件中是否有“type”时,它总是打印no

public static void main(String[] args) {
    if(args.length == 1)
        parseText(argv[0]); // call with textfile name
}
public void parseText(String inPath) {
        try {
        Scanner s = new Scanner(inPath);
        while(s.hasNextLine()) {
            if("type".equals(s.nextLine().trim()))
                System.out.println("Yes");
            else {
                System.out.println("no");
            }

        }
        }catch (Exception e ) {
            System.out.println("\nFILE NOT FOUND");
        }

}
任何帮助都将不胜感激

if("type".equals(s.nextLine().trim()))
您确实希望将文件中的数据行读入字符串,以便对该字符串进行处理

您想知道行是否以“type”开头:

您确实希望将文件中的数据行读入字符串,以便对该字符串进行处理

您想知道行是否以“type”开头:


检查行是否以“type”(不等于“type”)开头

应该是

String line = s.nextLine().trim();
if (line.startsWith("type"))

检查行是否以“type”(不等于“type”)开头

应该是

String line = s.nextLine().trim();
if (line.startsWith("type"))

好的,但是我仍然不知道如何得到值“hello”或“hey”?好的,但是我仍然不知道如何得到值“hello”或“hey”?如果你想从一个文件中读取,你需要用
new Scanner(new file(inPath))打开一个文件至少。目前,您只是在扫描在命令行上传入的字符串。如果要读取文件,需要使用
new Scanner(new file(inPath))打开一个文件至少。目前,您只是在扫描在命令行上传入的字符串。
String line = s.nextLine().trim();
if (line.startsWith("type"))