我如何每行读取一个文本文件,然后将字符串分解成单个单词(分成一个树集)而不重复?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我如何每行读取一个文本文件,然后将字符串分解成单个单词(分成一个树集)而不重复?相关的知识,希望对你有一定的参考价值。

我在这里是新来的,那是因为我最近的Java作业使我发疯。自从不得不转向在线课程以来,我一直在艰难地掌握我们所学的知识。我希望有人能帮助我确定应该为“ processDocument”方法编写的内容。我整天都在删除和重写代码,我们的老师没有直接教我们应该做什么。我们先阅读了一个powerpoint文件,然后阅读了实验室指导,然后嘲笑了我们,使之神奇。即使我们发送文件进行审核,他也只会说“您已关闭”,然后我们又花了一天时间查看堆栈溢出。我更喜欢动手操作,因为它会缠在我的头上,而待在家里的多动症也对学习没有帮助。

如果有人有时间帮助我,谢谢。这是我在processDocument方法中编写的内容。它将运行,但会显示“得到0个单词”。因此,我完全感到困惑。

TreeSet<String> words = new TreeSet<>();
    int line=0;
    File file = new File("//AtTheMountainsOfMadness_HP_Lovecraft.txt");
    Scanner input = null;
    try
        input = new Scanner(file);
        while(input.hasNext());
            String s = input.nextLine();
            String[] sSplit = s.split(",");
            String name = sSplit[0];
            TreeSet sname = new TreeSet();
            tokenize(name);
            sname.add(name);

            line++;
        
     catch (IOException e) 
        System.out.println("Number Format error");

    
    return words;

The default code

Lab directions

答案

您正在返回单词,但未在其中添加任何内容。删除sname Treeset对象,并在单词Treeset中添加单词。

TreeSet<String> words = new TreeSet<>();
    int line=0;
    File file = new File("//AtTheMountainsOfMadness_HP_Lovecraft.txt");
    Scanner input = null;
    try
        input = new Scanner(file);
        while(input.hasNext());
            String s = input.nextLine();
            String[] sSplit = s.split(",");
            String name = sSplit[0];
            tokenize(name);
            words.add(name);

            line++;
        
     catch (IOException e) 
        System.out.println("Number Format error");

    
    return words;

以上是关于我如何每行读取一个文本文件,然后将字符串分解成单个单词(分成一个树集)而不重复?的主要内容,如果未能解决你的问题,请参考以下文章

无法将带有字符串的文本文件转换为 R 中每行一个字符的列

将整个文本文件作为单个字符串读取的合理方法是啥?

将整个文本文件作为单个字符串读取的合理方法是啥?

如何将文本文件分解成更小的块(在 Unix 上使用 C++)?

在Python中将字符串分解为字符列表[重复]

python将指定文本中的字符串替换后,生成新的文本文件。