给Lucene加入性能更好的中文分词1 的一点改动

来源:互联网 发布:迪杰斯特拉算法 c语言 编辑:程序博客网 时间:2024/05/16 07:31

给Lucene加入性能更好的中文分词1(原创) 

        前一段时间看到了这http://blog.donews.com/windshow/archive/2005/09/23/564655.aspx文章,觉得写得非常的不错,但使用的时候发现了一个小问题,后来留了这样一帖

FileIO.readerToString(reader);
中的FileIo类是怎么写的阿?
shuangpingli@126.com
有知道的告诉我一声,非常感谢阿!

后来有几个朋友给我发邮件问我解决了没有,现在我把解决办法与大家分享,我是自己写了一个方法来转换了一下

代码如下

   //used by conver Reader to String
   public String readerToString(Reader reader)throws IOException{
    BufferedReader br = new BufferedReader(reader);
    String ttt = null;
    String tttt = null;
    while((ttt=br.readLine())!=null){
       tttt += ttt;
    }
    return tttt;
   }

   /** Filters LowerCaseTokenizer with StopFilter. */
   public TokenStream tokenStream(String fieldName, Reader reader){
    try{
      ICTCLAS splitWord = ICTCLAS.getInstance();
      String inputString = this.readerToString(reader);//FileIO.readerToString(reader);
      String resultString = splitWord.paragraphProcess(inputString);
      System.out.println("spliteResult"+resultString);
      return new StopFilter(new LowerCaseTokenizer(new StringReader(resultString)),stopWords);
      }
    catch (Exception e){
     System.out.println("转换出错");
     return null;
    }
   }

添加中文分词工程下载:  唉为什么不能上传文件呐!