蓝鹈鹕Java项目24阅读文件

时间:2014-10-25 18:11:03

标签: java project pelican

项目分配如下:

编写一个名为FileNerd的类,它将从名为NerdData的文件中输入文本行 存储在temp_Larry文件夹中(假设您的名字是Larry)。文件输入循环后, 创建一个循环,在该循环中只打印那些以“The”开头的行。

所以这就是我到目前为止的作品

import java.util.*;
import java.io.*;
public class FileNerd
{
    public static void main (String args[]) throws IOException
    {
        Scanner sf = new Scanner(new File("C:\\temp_Larry\\NerdData.txt"));
        int maxIndx = -1;
        String text[] = new String[100 ];
        while(sf.hasNext())
        {
            maxIndx++;
            text[maxIndx]=sf.nextLine();
        }
        sf.close();

        for(int j = 0; j <= maxIndx; j++)
        {
            String q = text[j];

            if( q.substring(3).equals("The"))
            {
                System.out.println(q);
            }
        }
    }
}

我不确定我做错了什么,因为它编译时没有语法错误但没有打印。

1 个答案:

答案 0 :(得分:0)

关于调试的一些想法:

  • 您可以在整个代码中编写其他System.out.println(debug_msg)语句,以了解正在发生的事情。
  • 添加这些调试行时,您通常会了解如何解决自己的问题。
  • 此外,您可以使用调试器(大多数IDE附带一个)。您可以设置断点以停止程序并遍历代码。

查看你的代码我没有看到任何明显的错误。我建议您添加此调试行以了解正在进行的操作并自行调试。

for(int j = 0; j <= maxIndx; j++) {
     String q = text[j];
     // this will tell you what the contents of the line are
     System.out.println(q)

     if( q.substring(3).equals("The")) {
        System.out.println(q);
     }
}