java - 代码在 txt 文件中找不到字符串。我的代码有什么问题吗?

标签 java file-io while-loop

我编写这段代码是为了查看 txt 文件并找到用户作为输入提供的字符串。我的 txt 文件包含这样的行(此信息稍后会很重要):

第一行 - 空白。 第二条线——伊丹 第三行-yosi

现在,如果用户输入“idan”作为用户(不带“”),代码就会找到它。如果用户输入“yosi”,它将找不到它。就像我的代码只读取第二行。我是编程新手,这只是我学习如何读写文件的练习,请耐心等待。

这是代码(有一个 catch 和 else 语句,但由于长度原因而被省略):

    //Search for the specific profile inside.
        try{        
            BufferedReader br = new BufferedReader(new FileReader("d:\\profile.txt"));
            System.out.println("Searching for your Profile...");


            int linecount = 0;
            String line;
            while (br.readLine() !=null){
                linecount++;

                if(userName.contentEquals(br.readLine())){
                    System.out.println("Found, " + userName + " profile!");
                    break;
                }
                else{

                }

最佳答案

问题是这样的:

*if(userName.contentEquals(br.readLine())){* 

您正在阅读附加行。您会发现它会读取您的实现中的每隔一行。即第 2、4、6 行等

关于java - 代码在 txt 文件中找不到字符串。我的代码有什么问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6904014/

相关文章:

Java添加对象到ArrayList错误

python - 如何获取用户输入并将其写入文本文件?

C++ Windows API 比 ifstream 慢?还有别的办法吗?

java - 如何将文件中的数字列表放入数组并返回数组

java - 使用 jsonPath 匹配 boolean 真值

java - 如果有多个节点具有相同的键,则 Hashmap 使用下一个变量指向下一个节点

java - Htmlunit 2.27 中的内存泄漏

c - 具有预定义一维数组的二维数组的动态输入

python - python 中的无限 while 循环

python - 如何在条件为真时至少执行一次循环操作