繁体   English   中英

从文件Java中检测特定的字符串值

[英]Detecting a particular string value from a file, Java

我正在尝试检测外部txt文件中的特定字符串值。 在这种情况下,我试图检测%%。

public void read(){
    while(x.hasNext()){
        String a = x.next();
        System.out.println(a);
        if(a == "%%"){
            System.out.println("Found the end");
        }
        else{
            System.out.println("No end");
        }

    }
}

它正在正确读取x,因为它会打印出文件中的单词,但在每个单词之后都显示“ No end”,即使是“ %%”也是如此。 我确定我在某个地方犯了一些愚蠢的错误,但我只是找不到。 x看起来像这样:苹果橙%%葡萄。 任何帮助都将不胜感激。

您必须使用String::equals()进行比较,但不能使用运算符== ==运算符将String的地址位置和字符串文字%%进行比较。

尝试

    if(a.trim().equals("%%"))
    {
        System.out.println("Found the end");
    }

那应该消除字符串末尾的多余空格,并确保良好的比较!

您应该使用equals方法而不是==来检查参考的逻辑等式。

if(a.equals("%%")){
        System.out.println("Found the end");
    }
    else{
        System.out.println("No end");
    }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM