1 package org.contineo.core.text; 2 3 import java.util.Collection ; 4 import java.util.Iterator ; 5 6 import org.contineo.core.text.analyze.Analyzer; 7 import org.contineo.core.text.analyze.AnalyzerFactory; 8 import org.contineo.core.text.analyze.Entry; 9 import org.contineo.documan.Term; 10 import org.contineo.documan.dao.TermDAO; 11 12 17 public class AnalyzeText { 18 19 22 public AnalyzeText() { 23 } 24 25 32 public void storeTerms(int menuid, String text, String language) { 33 TermDAO termDao = new TermDAO(); 34 Analyzer analyzer = AnalyzerFactory.create(language); 35 analyzer.analyze(text); 36 long words = analyzer.getWordCount(); 37 Collection terms = analyzer.getTopWords(20); 38 Iterator iter = terms.iterator(); 39 while (iter.hasNext()) { 40 Entry entry = (Entry)iter.next(); 41 Term term = new Term(); 42 term.setMenuid(menuid); 43 term.setStem(entry.getWord()); 44 term.setValue(entry.getNumber()*1000/words); 45 term.setWordCount(entry.getNumber()); 46 term.setOriginWord(entry.getOriginWord()); 47 termDao.store(term); 48 } 49 } 50 51 58 public String getTerms(int count, String text, String language) { 59 StringBuffer result = new StringBuffer (); 60 Analyzer analyzer = AnalyzerFactory.create(language); 61 analyzer.analyze(text); 62 Collection terms = analyzer.getTopWords(count); 63 Iterator iter = terms.iterator(); 64 int temp = 0; 65 while (iter.hasNext() && temp < count) { 66 Entry entry = (Entry)iter.next(); 67 if (temp > 0) 68 result.append(", "); 69 result.append(entry.getOriginWord()); 70 temp++; 71 } 72 return result.toString(); 73 } 74 } 75 | Popular Tags |