heheh mais Uma vez Obrigado Paulo
valeu pela dica, mas eu ja estava olhando, estudando isso no site da
propria sun.. é meio complicado de entender a especificação e a
documentação que a sun traz justamente por não colocarem exemplos lá né...
dai fico meio perdido em saber por exemplo qual classe uso e pra que
uso..mas vai dar certo, curioso eu sou de natureza.. mas as vezes a gente
precisa de uma luz né hehe..
mas valeu colega...vc ajudou muitoooooomesmo..
abraços
Giuliano
-------Mensagem
original-------
Data: sexta-feira, 25
de outubro de 2002 15:57:31
Assunto: Re: Res: Re:
[java-list] Java e XML
Giuliano, vale a pena dar um pesquisada na
net, experimente olhar no site: http://java.sun.com/xml, acredito
que duas caracteristicas de um bom análista de sistemas seja:
persistência e ser autodidata.
Aí vai um exemplo de como navegar
pelo documento xml, primeiro com a API DOM e após com SAX, lembrando
que DOM cria a árvore do xml em memória, deve ser isto que vc esta
procurando.
import java.io.File; import
org.w3c.dom.*; import javax.xml.parsers.*;
public class
DomTesteSimples {
public static void main(String[]
argv) { String fileName =
"c:\\temp\\teste.xml";
DocumentBuilderFactory factory
= DocumentBuilderFactory.newInstance(); try { DocumentBuilder
builder = factory.newDocumentBuilder(); /* Com o objeto document vc
pode navegar através dos nós, * obter a lista de nós filhos
( getChildNodes() ) * obter o nome de um determinado
nó: * document.getChildNodes().item(0).getNodeName(); * obter o
conteúdo de um determinado
nó: * document.getChildNodes().item(0).getNodeValue(); *
... */ Document document = builder.parse( new File(fileName)
); NodeList nodes
= document.getDocumentElement().getChildNodes(); makeList(nodes);
}
catch (Exception e) { e.printStackTrace(); } }
public
static void makeList(NodeList nodes) { for (int i = 0; i <
nodes.getLength(); i++) { Node node = nodes.item(i); if (node !=
null && node.getNodeType()
== Node.ELEMENT_NODE) { System.out.println("ELEMENTO: "
+ node.getNodeName()); NodeList childs =
node.getChildNodes(); makeList(childs); } else if (node!=null
&& node.getNodeType() == Node.TEXT_NODE) { // pulando
quebras de linhas do xml if (!node.getNodeValue().trim().equals(""))
{ System.out.println("TEXTO: "
+ node.getNodeValue()); } } } }
}
***************************** * o outro exemplo:
* *****************************
import
javax.xml.parsers.*; import org.xml.sax.*; import
org.xml.sax.helpers.*; import java.io.*;
public class
SAXTesteSimples { public SAXTesteSimples() { try
{ SAXParserFactory factory
= SAXParserFactory.newInstance(); SAXParser parser =
factory.newSAXParser(); DefaultHandler dh =
new SAXTesteSimplesHandler(); parser.parse(new File("c:\\temp\\teste.xml"),
dh); parser.getXMLReader(); } catch(ParserConfigurationException
pce) { pce.printStackTrace(); } catch (SAXException saxe)
{ saxe.printStackTrace(); } catch (IOException ioe)
{ ioe.printStackTrace(); } }
public static void
main(String arg[]) { new SAXTesteSimples(); }
public class
SAXTesteSimplesHandler extends DefaultHandler { /* Olhe na
documentação os métodos que podem * ser sobre
escritos. */ public void startElement(String uri,
String localName, String name, Attributes attrs)
{ System.out.println(name); } public void characters(char[] ch,
int start, int length) { if (!(new String(ch,
start, length).trim().equals(""))) System.out.println(new
String(ch, start, length).trim()); } } }
OK? Paulo
Silveira
--- Giuliano <[EMAIL PROTECTED]> wrote: >
caro Paulo.. > obrigado pelo seu exemplo que me enviou... >
mas ainda fico com uma duvida... > seguinte...gerar o arq.xml eu fiz
aqui de 2 formas , > uma fiz uma classe que > tem acese ao meu
BD, e concatenado as tags gero o > xml certo, e tb a outra >
maneira usei > o XSQL não sei se vc conhece..., dessas duas >
maneiras deu certo e consigo > gerar o meu doc.Xml.., na primeira
quando fiz a > classe não usei nehum > package de xml, é
apenas uma classe que concatena as > tags.... ta ai gerei o >
xml..dessa maneira assim ta correto eu trabalhar??? > a duvida é
como então > depois de gerado o xml eu faço para ler e >
interpretar eses xml, por exemplo > pesquisar dentro dos nodes
dele..por exemplo se > tenho la um xml gerado pela > classe ou
pelo XSQL: > <usuario> >
<nome>Giuliano</nome> >
<ender>Giuliano</ender> >
<fone>Giuliano</fone> > </usuario> > dai eu
quero ler esse xml e mostra-lo na tela... > como eu fraia isso isso
que > ta me deixando meio desorientado, como mandar >
analizar, ler o documento e > apresentar na tela o que
preciso... > abraços e obrigado > > >
-------Mensagem original------- > > De: [EMAIL PROTECTED] >
Data: terça-feira, 22 de outubro de 2002 01:36:29 > Para: [EMAIL PROTECTED];
Bruno Borges > Assunto: Re: [java-list] Java e XML > >
Aí vai um exemplo: > > import javax.xml.parsers.*; >
import javax.xml.transform.*; > import org.w3c.dom.*; > import
java.io.*; > import javax.xml.transform.dom.*; > import
javax.xml.transform.stream.*; > > public class TesteXML
{ > > public static void main(String[] args) { > try
{ > DocumentBuilderFactory factory = >
DocumentBuilderFactory.newInstance(); > DocumentBuilder builder
= > factory.newDocumentBuilder(); > Document document =
builder.newDocument(); > > Node raiz = >
document.createElement("raiz"); > Node no1 = >
document.createElement("teste1"); > Node no2 = >
document.createTextNode("Texto"); > no1.appendChild(no2); >
raiz.appendChild(no1); > document.appendChild(raiz); >
> TransformerFactory transFactory = >
TransformerFactory.newInstance(); > Transformer transformer
= > transFactory.newTransformer(); > DOMSource source =
new > DOMSource(document); > File newXML = new >
File("C:\\Temp\\teste.xml"); > FileOutputStream os = new >
FileOutputStream(newXML); > StreamResult result = new >
StreamResult(os); > transformer.transform(source, result); > }
catch (Exception e) { > e.printStackTrace(); > } >
} > } > > Atenciosamente, > Paulo >
> --- Bruno Borges <[EMAIL PROTECTED]>
wrote: > > fala serio neh... metodo lusitano!!! > >
> > com o DOM dah sim pra criar um xml >
dinamicamente... > > > > a desvantagem eh q se o arkivo
ficar muito grande, > > vai dar OutOfMemoryError > >
> > o DOM eh pesadinhu... ;) > > > > para
arkivos grandes usa-se o SAX... mas esse eu > jah > > nao
tenho certeza > > quanto a criação de xml... ;( > >
> > ----- Original Message ----- > > From: <Roberto
Vieira de Figueiredo> > > To: <[EMAIL PROTECTED]> >
> Sent: Friday, October 18, 2002 12:56 PM > > Subject: Re:
[java-list] Java e XML > > > > > > > Caro
Giuliano, > > > > > > Não é necessário utilizar
DOM para escrever um > > XML. > > > Somente se
utiliza o DOM para fazer a leitura do > > > mesmo, já que o
XML é um aquivo texto comum > > formatado. > >
> > > > > > > Segue abaixo um exemplo de
geração de um xml. > > > > > > Vector vetorUsuario
= > preencheVetorUsuarioDoBd(); > > > > > >
StringBuffer str = new StringBuffer("<usuarios > > >
quantidade=\""); > > >
str.append(vetorUsuario.size()); > > >
str.append("\">"); > > > > > > for (int i=0;
i<vetorUsuario.size(); i++) { > > > StUsuario usuario
= > > vetorUsuario.getElementAt(i); > > >
str.append(" <usuario>\n"); > > > str.append("
<codigo>"); > > >
str.append(usuario.getCodigo()); > > >
str.append("</codigo>\n"); > > > str.append("
<nome>"); > > > str.append(usuario.getNome()); >
> > str.append("</nome>\n"); > > > str.append("
</usuario>\n"); > > > } > > > > >
> str.append("</usuarios>"); > > > > > >
System.out.println(str.toString()); > > > > > > A
saída deverá ser: > > > <usuarios quantidade=3> >
> > <usuario> > > >
<codigo>1</codigo> > > >
<nome>Roberto</nome> > > >
</usuario> > > > <usuario> > > >
<codigo>2</codigo> > > >
<nome>Renata</nome> > > > </usuario> >
> > <usuario> > > >
<codigo>3</codigo> > > >
<nome>Patricia</nome> > > >
</usuario> > > > </usuarios> > >
> > > > > > > Espero ter ajudado. > >
> > > > Roberto Vieira de Figueiredo > >
> > > > > > > > > > >
> > _______________________________________________________________________ >
> > Yahoo! GeoCities > > > Tudo para criar o seu site:
ferramentas fáceis > de > > usar, espaço de sobra e >
> acessórios. > > > http://br.geocities.yahoo.com/ >
> > > > > ------------------------------ LISTA
SOUJAVA > > ---------------------------- > > > http://www.soujava.org.br - Sociedade
de > > Usuários Java da Sucesu-SP > > > dúvidas mais
comuns: > > http://www.soujava.org.br/faq.htm >
> > regras da lista: > > http://www.soujava.org.br/regras.htm >
> > historico: > > > http://www.mail-archive.com/java-list%40soujava.org.br >
> > para sair da lista: envie email para > > [EMAIL PROTECTED] >
> > >
> > ------------------------------------------------------------------------- >
> > === message truncated
===
__________________________________________________ Do
you Yahoo!? Y! Web Hosting - Let the expert host your web site http://webhosting.yahoo.com/
------------------------------
LISTA SOUJAVA ---------------------------- http://www.soujava.org.br - Sociedade
de Usuários Java da Sucesu-SP dúvidas mais comuns: http://www.soujava.org.br/faq.htm regras
da lista: http://www.soujava.org.br/regras.htm historico:
http://www.mail-archive.com/java-list%40soujava.org.br para
sair da lista: envie email para [EMAIL PROTECTED]
------------------------------------------------------------------------- . |