Метод addExtendedText()
Листинг 4.24 Метод addExtendedText()
// одним из вариантов стиля является
// <paragraph>
, простой текст
private void addExtendedText( StringBuffer sb, Element e ){
NodeList nl = e.getChildNodes();
int ct = nl.getLength();
// sb.append("child count " + ct + brcrlf );
for( int i = 0 ; i < ct ; i++ ){
Node n = nl.item(i);
switch( n.getNodeType() ){
case Node.TEXT_NODE :
sb.append( n.getNodeValue().trim() );
break ;
case Node.ELEMENT_NODE :
Element en = (Element) n ;
// sb.append("Element Name " + en.getNodeName() );
doExtendedTextElement(en.getNodeName(), sb, en );
break ;
default :
sb.append("default Name " + n.getNodeName() );
sb.append(" Value " + n.getNodeValue() );
}
sb.append(' ' );
// because values get trimmed
//sb.append( brcrlf );
}
}
//
private void doExtendedTextElement( String name, StringBuffer sb, Element e){
if( name.equals("paragraph") ){
sb.append("<p>
");
addExtendedText( sb, e );
sb.append("</p>
");
}
else if( name.equals("italics")){
sb.append("<i>
" );
addExtendedText( sb, e );
sb.append(" </i>
");
}
else if( name.equals("bold")){
sb.append("<b>
" );
addExtendedText( sb, e );
sb.append(" </b>
");
}
else { addExtendedText( sb, e );
}
}
public String toString()
{ StringBuffer sb = new StringBuffer("ProductFormatter ");
return sb.toString();
}
}
Содержание раздела