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

         

Метод reformDocType...



Листинг 9.8. Метод reformDocType модифицирует ссылку на DTD (XMLgrabber.java)

// string has doctype declaration, revise to //point to local version private String reformDoctype( String dts ){ int p1 = dts.indexOf( "http:");
// points at h if( p1 < 0 ) return dts ; // int p2 = dts.indexOf( '"', p1 );
int p3 = dts.lastIndexOf('/', p2);
if( p3 < 0 ) return dts ; dtdURL = dts.substring( p1 , p2 );
dtdFname = dts.substring( p3 + 1, p2 );
// System.out.println("DTD url:" + dtdURL + "<");
// System.out.println("DTD fname:" + dtdFname + "<");
String tmp = dts.substring(0,p1);
// includes " return tmp + dts.substring( p3 + 1 );
}

Так как процесс загрузки в некоторых точках может быть прерван, существует опасность накопления пустых или частично записанных временных файлов. Метод finalize, как показано в листинге 9.9, пытается удалить эти файлы, если они существуют. Если все идет нормально, переменные tfnxml и tfndtd должны содержать null и тогда попытки удалить временные файлы не происходит.



Содержание раздела