Метод formatElement (NewsModel.java)
Листинг 9.17. Метод formatElement (NewsModel.java)
// Element known to be an article, formatting string public String formatElement( Element art, String fmt ){ StringBuffer sb = new StringBuffer( 3 * fmt.length() );
int p0 = 0 ; int p1 = fmt.indexOf("<%");
int p2 = fmt.indexOf('>
', p1);
while( p1 >
p0 && p2 >
p1 ){ sb.append( fmt.substring( p0, p1 ));
sb.append( getContent( art, fmt.substring(p1 + 2, p2) ));
p0 = p2 + 1 ; p1 = fmt.indexOf("<%", p0);
if( p1 >
p0 ){ p2 = fmt.indexOf('>
', p1);
} } sb.append( fmt.substring( p0 ));
return sb.toString();
} // element known to be an article private String getContent( Element art, String key ){ NodeList nl = art.getElementsByTagName( key );
if( nl.getLength() == 0 ) return ""; Element kE = (Element)nl.item(0);
return getFullText( kE ) ; }
Последняя часть кода класса NewsModel, приведенная в листинге 9.18, содержит метод she! 1 Sort и некоторые другие служебные методы.
Содержание раздела