2011-04-10 20 views
0

你好: 我寫在Java代碼Nutch的(開源搜索引擎),除去從阿拉伯語單詞的movments的索引。 我不知道它裏面的錯誤是什麼。 t這是代碼:寫代碼Java進行Nutch的

package com.mycompany.nutch.indexing; 
import org.apache.hadoop.conf.Configuration; 
import org.apache.hadoop.io.Text; 
import org.apache.log4j.Logger; 
import org.apache.nutch.crawl.CrawlDatum; 
import org.apache.nutch.crawl.Inlinks; 
import org.apache.nutch.indexer.IndexingException; 
import org.apache.nutch.indexer.IndexingFilter; 
import org.apache.nutch.indexer.NutchDocument; 
import org.apache.nutch.parse.getData().parse.getData(); 


public class InvalidUrlIndexFilter implements IndexingFilter { 

    private static final Logger LOGGER = 
    Logger.getLogger(InvalidUrlIndexFilter.class); 

    private Configuration conf; 

    public void addIndexBackendOptions(Configuration conf) { 
    // NOOP 
    return; 
    } 

    public NutchDocument filter(NutchDocument doc, Parse parse, Text url, 
     CrawlDatum datum, Inlinks inlinks) throws IndexingException { 
    if (url == null) { 
     return null; 
    } 



    char[] parse.getData() = input.trim().toCharArray(); 
     for(int p=0;p<parse.getData().length;p++) 
      if(!(parse.getData()[p]=='َ'||parse.getData()[p]=='ً'||parse.getData()[p]=='ُ'||parse.getData()[p]=='ِ'||parse.getData()[p]=='ٍ'||parse.getData()[p]=='ٌ' ||parse.getData()[p]=='ّ'||parse.getData()[p]=='ْ' ||parse.getData()[p]=='"')) 
      new String.append(parse.getData()[p]); 

    return doc; 
    } 

    public Configuration getConf() { 
    return conf; 
    } 

    public void setConf(Configuration conf) { 
    this.conf = conf; 
    } 
} 

我認爲錯誤是使用parse.getdata()但我不知道我應該用什麼來代替呢?

+0

您有什麼問題?例外?沒有得到預期的結果?什麼?順便說一句,這個新的String.append(parse.getData()[p]);意味着什麼......因爲你不把字符串分配給任何東西。 – MeBigFatGuy 2011-04-10 06:59:58

+0

感謝名單的評論 我有2個錯誤 我怎麼可以在索引的索引分配的話,新的價值? – moneera 2011-04-10 07:42:44

+0

要添加單詞,您需要有兩個字符串的方法doc.add(name,value)。 – Howard 2011-04-10 07:54:50

回答

1

char[] parse.getData() = input.trim().toCharArray(); 

會給你一個編譯錯誤,因爲左邊是不是一個變量。通過在這條線的唯一變量名稱(例如parsedData)和下面的行請更換parse.getData()

第二

import org.apache.nutch.parse.getData().parse.getData(); 

進口也將失敗。看起來很像一個文本替換問題。

+0

感謝名單了很多您的回覆,但我不知道什麼是變量i將放在代碼(例如parsedData)的類型,以及如何我會初始化爲它的詞語的索引,然後這個變量的值返回索引器請回復一個完整的代碼pleeeaase – moneera 2011-04-10 07:35:52

+0

@hala您的問題並不清楚,我可以提供任何代碼。我真的不明白你想要完成什麼。 – Howard 2011-04-10 07:50:56

+0

請霍華德幫助我: 我想寫的是採取用阿拉伯文寫着從索引的索引過濾器,並從這個詞刪除動作,然後他們回到索引 我應該用什麼來代替parse.getdata()什麼我應該把doc.add(名稱,值)請幫助meeee – moneera 2011-04-10 08:03:04