Foros del Web » Programación para mayores de 30 ;) » Java »

Utilizar sax parser

Estas en el tema de Utilizar sax parser en el foro de Java en Foros del Web. Hola! Tengo implementado un parseador sax par aun documento xml. El caso es que no se como integrarlo en un programa a parte. Adjunto el ...
  #1 (permalink)  
Antiguo 17/05/2010, 02:10
 
Fecha de Ingreso: marzo-2010
Mensajes: 73
Antigüedad: 14 años, 8 meses
Puntos: 0
Utilizar sax parser

Hola!
Tengo implementado un parseador sax par aun documento xml.
El caso es que no se como integrarlo en un programa a parte.
Adjunto el codigo de mi parseador, aunq es un poco largo

Código:
public class SaxParser {
	public void lee(String url){
	       try{
	            SAXParserFactory spf=SAXParserFactory.newInstance();
	            SAXParser sp = spf.newSAXParser();
	           	sp.parse(url, new LibraryXMLReader() );
	        }catch(ParserConfigurationException e){
	        	System.err.println("error de  parseo");
	        }catch(SAXException e2){
	        	System.err.println("error de  sax : " + e2.getStackTrace());
	        } catch (IOException e3) {
				// TODO Auto-generated catch block
	        	System.err.println("error de  io : " + e3.getMessage() );
	        }

	    }

		public static void main(String[] args){
		SaxParser lector = new SaxParser();
		lector.	lee("rssowl.xml");
	}
	//--------------------------------------------------------------------------------- 
	    private class LibraryXMLReader extends DefaultHandler {
	  	
	    	 String contenido="";  // cadena para almacenar el contenido de un tag

		public void startDocument() throws SAXException{
		 	System.out.println("Estoy al principio del documento");	
	      
	  	}
		public void endDocument()throws SAXException{
	    	 	System.out.println("Estoy al final del documento");	
	  	}

	     	//Elemento nuevo
	    	public void startElement(String uri, String localName, String qName, Attributes attributes) {
				
				// Get the number of attribute 
				int length = attributes.getLength(); 
				
				//Creo un array en el que iré almacenando todas las url de los enlaces
				ArrayList<String> url = new ArrayList<String>(); 
				
				// Process each attribute 
				for (int i=0; i<length; i++) { 
					// Get names and values for each attribute 
					String name = attributes.getQName(i); 
					String value = attributes.getValue(i);
					if(name == "xmlUrl"){ 
						System.out.println("Atributo :" + value);
						url.add(value);
					}
				}
	    	}
	    	
	        public void characters(char buf[], int offset, int len)
	        throws SAXException
	        {
	        	contenido = new String(buf, offset, len); 
	        }
	        //Fin del elemento
	        public void endElement(String uri, String localName, String qName) {
	         }
	    }
}
como el resto del programa, tambien tiene un main, me da error. querría que esto me devolviera al programa principal el array lisy url.

Un saludo y grcias de antemano.

Etiquetas: parser, utilidades
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:33.