Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Java中打印文本文件中的特定单词_Java_Arrays_String_If Statement - Fatal编程技术网

如何在Java中打印文本文件中的特定单词

如何在Java中打印文本文件中的特定单词,java,arrays,string,if-statement,Java,Arrays,String,If Statement,如你所见,我有一个文本文件,如下所示: 难以置信,不,相信,能行 虐待,虐待,虐待 可理解的,可理解的 我需要得到语素或每个单词,例如,如果我输入单词mistatment,输出将是MIS、TREAT、MENT,根单词是TREAT 以下是我目前的代码: import java.io.BufferedReader; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException;

如你所见,我有一个文本文件,如下所示:

难以置信,不,相信,能行 虐待,虐待,虐待 可理解的,可理解的

我需要得到语素或每个单词,例如,如果我输入单词mistatment,输出将是MIS、TREAT、MENT,根单词是TREAT

以下是我目前的代码:

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Scanner;

public class morph {

    public static void main(String[] args) throws IOException {

         System.out.println("Enter a word: ");
         Scanner sc = new Scanner (System.in);
         sc.nextLine();

         BufferedReader br = new BufferedReader(new FileReader("C:/Users/xxxx/Desktop/morphemes.txt"));
         String line = null;
         while ((line = br.readLine()) != null) {

             //i'm stuck

             System.out.println("The morpheme words are: "); // EG: mis , treat, ment
             System.out.println("The Root word is: "); // EG: treat
         }
    }
}
输出应为:

输入一个单词:虐待 语素词:mis,treat,ment 词根是:治疗


问题是如何在文本文件中打印特定数据。我不知道我会用if-else语句还是字典。如果你要告诉我这应该是一本字典,请帮帮我。这是一个NLP主题,顺便说一句,我想String.split方法可以帮助您

public String[] words = line.split(String ",");

// Check if first word in the line equals to the input
if (words != null && !words.isEmpty() && words[0].equals(sc.toString()))
{ 
  System.out.println("The morpheme words are: "+words[1]+words[2]);
  System.out.println("The Root word is: "+words[2]);
}

你有什么问题需要帮助?您希望我们编写代码吗?您要求我们搜索解决此问题的特定算法或库。请注意,此类问题通常被视为离题。也许你能在这方面找到更好的帮助。到目前为止,你的代码并不是真正解决问题的尝试。对代码的请求不是问题。请研究这个主题,并在发布问题之前阅读和。@PakerHalo如何制作那本词典?@PakerHalo如何制作那本词典?为了得到它,我应该研究什么具体的主题?这很难找到,所以我在寻找除了字典以外的其他方法,比如说,如果else或Array能做到,他声称有一个包含语素的文本文件?!?是的,这些单词保存在文本文件中,因此用户必须输入其中一个单词,程序应该得到它的语素。我真的在互联网上找不到帮助,因为这是一个NLP topicRight-我想不出创建语素的方法。对不起-然后我明白我有一个文本文件错误。我假设这个文件是存在的——不管是谁填的……是的,我们的教授建议要那个“字典”,但我真的不知道那个是什么,所以我打赌有一个更简单的方法