Электронный магазин на Java и XML



         

Метод addText - часть 3


String format = img.getAttribute("format");

String width = img.getAttribute("width");

String height = img.getAttribute("height");

String src = img.getAttribute("src");

String desc = "image ";

sb.append("<img src=\"");

// detect option for image source to point off site

if( !src.toUpperCase().startsWith("HTTP")){

sb.append(resourcePath );

}

if( sb.charAt( sb.length() - 1 ) == '/' &&

src.charAt(0) == '/' ){

sb.append( src.substring(1) );

}

else sb.append( src ) ;

sb.append( "\" alt=\"" );

NodeList imgNL = img.getElementsByTagName("caption");

if( imgNL.getLength() > 0 ){

sb.append( desc );

// addText(sb, "caption", (Element) imgNL.item(0) );

}

else sb.append( desc );

sb.append( "\" width=\"" );

sb.append( width ); sb.append( "\" height=\"" );

sb.append( height ); sb.append( "\" >" );

//NodeList imgNL = img.getElementsByTagName("caption") ;

if( imgNL.getLength() == 0 ) return ;

Element caption = (Element) imgNL.item(0);

addText( sb, "caption", caption );

return ;

}

Формат нашего XML-каталога допускает использование стиля running_text в подписях и описаниях товаров. Методы addExtendedText и doExtendedTextEl ement, показанные в листинге 4.24, могут объединить весь текст описания или подписи с соответствующей разметкой HTML, чтобы создать абзац или назначить начертание этого текста (курсив или полужирный шрифт).

Листинг 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 ;




Содержание  Назад  Вперед