import java.io.*; import co***atdog.textEngine.XmlEngine; import com.fatdog.textEngine.exceptions.*; import co***atdog.textEngine.query.XQLResultListener; public class Search implements XQLResultListener { public static void main( String[] args ) { XmlEngine engine = new XmlEngine(); String searchFile = args[0]; String searchType = args[1]; String query = args[2]; try { file://配置引擎 en***e.setSaxParserName( "or***pache.xerces.parsers.SAXParser"); en***e.setMinIndexableWordLength( 3 ); en***e.setDoIndexNumbers( false ); en***e.setDocument( searchFile ); if (se***hType.equals("1")) { en***e.setListenerType( Xm***gine.STANDARD_LISTENER); } else if (se***hType.equals("2")) { en***e.setListenerType( Xm***gine.SUMMARY_LISTENER); } else { en***e.setListenerType( Xm***gine.CSV_LISTENER); } } catch( MissingOrInvalidSaxParserException e ){ Sy***m.out.println( "缺少或不可用的 SAX解析器" ); return; } catch( FileNotFoundException e ) { Sy***m.out.println( "不能找到 XML 文件: "); return; } catch( CantParseDocumentException e ) { Sy***m.out.println( "不能解析 XML 文件: "); return; } // en***e.printSessionStats(); en***e.addXQLResultListener( new Search() ); try { en***e.setQuery( query ); } catch( InvalidQueryException e ) { Sy***m.out.println( "不可用的查询请求: " + e.***Message() ); return; } } public void results( String xqlResults ) { Sy***m.out.println( xqlResults ); } } |
<or***pache.xerces.parsers.SAXParser> installed successfully 1: indexing web.xml Query: ( // ( / welcome-file-list welcome-file ) ) 3 hit(s) for file://welcome-file-list/welcome-file <?xml version="1.0"?> <xql:result query="//welcome-file-list/welcome-file" hitCount="3" elemCount="3" docCount="1" xmlns:xql="http://ww***atdog.com/ St***ard_Listener.html"> <welcome-file> in***.jsp </welcome-file> <welcome-file> in***.html </welcome-file> <welcome-file> in***.htm </welcome-file> </xql:result> |
C:xqlxql1>java Search web.xml 2 "//welcome-file-list/welcome-file" Pa***r.installSaxParser: <or***pache.xerces.parsers.SAXParser> installed successfully 1: indexing web.xml Query: ( // ( / welcome-file-list welcome-file ) ) 3 hit(s) for file://welcome-file-list/welcome-file <?xml version="1.0"?> <xql:result query="//welcome-file-list/welcome-file" hitCount="3" elemCount="3" docCount="1" xmlns:xql="http://ww***atdog.com/ Su***ry_Listener.html"> <welcome-file xql:docID="0" xql:elemIx="270"/> <welcome-file xql:docID="0" xql:elemIx="271"/> <welcome-file xql:docID="0" xql:elemIx="272"/> </xql:result> |
C:xqlxql1>java Search web.xml 3 "//welcome-file-list/welcome-file" Pa***r.installSaxParser: <or***pache.xerces.parsers.SAXParser> installed successfully 1: indexing web.xml Query: ( // ( / welcome-file-list welcome-file ) ) 3 hit(s) for file://welcome-file-list/welcome-file 3,3,1,0 0,270,welcome-file 0,271,welcome-file 0,272,welcome-file |
上一篇: XML简易教程之一
下一篇: 了解WEB页面工具语言XML(六)展望