2017-07-31 97 views
-4

所以你可以看到我有一個是這樣的一個文本文件:如何打印特定單詞在文本文件中的Java

令人難以置信,聯合國,相信能夠
虐待,MIS,治療,換貨
理解,理解,能夠

我需要得到語素或像如果我在的話虐待類型的示例中,輸出將是MIS每個字,治療,MENT和根詞是享受。

這裏是我到目前爲止的代碼:

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 
     } 
    } 
} 

輸出應該是:

輸入一個單詞:虐待 語素字:錯,治療,換貨 根詞是:善待

問題是我如何在文本文件中打印特定的數據。我不知道我會使用if else語句或字典。如果你要告訴我它應該是一本字典,請幫助我。這是一個NLP主題btw

+6

您需要幫助的是什麼問題?你希望我們寫代碼嗎? –

+0

您要求我們搜索解決此問題的特定算法或庫。請注意,這些問題通常被認爲是SO上的** off-topic **。也許你在[CS stackexchange](https://cs.meta.stackexchange.com/)找到更好的幫助。 – Zabuza

+1

您的「迄今爲止的代碼」並非真正的解決問題的嘗試。代碼請求不是問題。請在研究此主題並在發佈問題前閱讀[幫助]和[問]。 – RealSkeptic

回答

-1

我想方法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]); 
} 
+0

上面他聲稱有一個帶有語素的文本文件?!? – Josi

+0

是的,單詞保存在文本文件中,所以用戶必須輸入其中一個單詞,程序應該得到它的語素。我真的無法在互聯網上找到幫助,因爲它是一個NLP主題 – TheRodDude

+0

正確 - 我無法想象創造語素。對不起 - 然後我明白「我有一個文本文件」錯誤。我認爲這個文件是存在的 - 誰填充了它.... – Josi

相關問題