Pessoal, estou gerando um arquivo xml, queria pegar esse resultado xml e jogar para um arquivo e após ler esse arquivo xml. Só preciso o código para Salvar um arquivo e para Ler um arquivo ai aplico para salvar o meu resultado XML que já funciona.
Valeu
Olá eu uso o xstream e recomendo!
http://xstream.codehaus.org/index.html
[]'s
Olá Tiago eu usei o xStrean e já estou gerando o xml, gostaria só de pegar esse xml e colocar em um arquivo e depois ler o arquivi, acredito que o mais dificil já fiz que seria gerar o xml, caso queira olhar segue o código que gera e abre o xml abaixo.
código
import com.thoughtworks.xstream.XStream;
import java.awt.Dimension;
import javax.swing.JFrame;
import javax.swing.JPanel;
/**
*
-
@author mss
*/
public class NewJFrame extends javax.swing.JFrame {
/** Creates new form NewJFrame */
public NewJFrame() {
initComponents();
XStream xstream = new XStream();// Criando um objeto XStream
String string_jpanelEmXML = xstream.toXML(jp_principal);// Passando os dados do JPanel Java para XML e salva em uma String
System.out.println(string_jpanelEmXML);//imprime XML na tela
JPanel jp_recebe = (JPanel) xstream.fromXML(string_jpanelEmXML);//Transforma a String XML em JPanel de novo
JFrame jf = new JFrame("nova janela");//cria uma nova janela
jf.add(jp_recebe,java.awt.BorderLayout.CENTER);//adiciona o JPanel novo na janela
//Define o tamanho e joga na tela
jf.setSize(new Dimension(400,400));
jf.setMaximumSize(new Dimension(400,400));
jf.setPreferredSize(new Dimension(400,400));
jf.setVisible(true);
}
@SuppressWarnings(“unchecked”)
//
private void initComponents() {
buttonGroup1 = new javax.swing.ButtonGroup();
jp_principal = new javax.swing.JPanel();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
jToggleButton1 = new javax.swing.JToggleButton();
jCheckBox1 = new javax.swing.JCheckBox();
jCheckBox2 = new javax.swing.JCheckBox();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jButton1.setText("JB");
jButton2.setText("Teste");
jToggleButton1.setText("jToggleButton1");
jCheckBox1.setText("JCB");
jCheckBox2.setText("jCheckBox2");
javax.swing.GroupLayout jp_principalLayout = new javax.swing.GroupLayout(jp_principal);
jp_principal.setLayout(jp_principalLayout);
jp_principalLayout.setHorizontalGroup(
jp_principalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jp_principalLayout.createSequentialGroup()
.addGap(272, 272, 272)
.addComponent(jToggleButton1)
.addContainerGap(290, Short.MAX_VALUE))
.addGroup(jp_principalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jp_principalLayout.createSequentialGroup()
.addGap(0, 184, Short.MAX_VALUE)
.addGroup(jp_principalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jButton1)
.addGroup(jp_principalLayout.createSequentialGroup()
.addGap(240, 240, 240)
.addComponent(jButton2))
.addGroup(jp_principalLayout.createSequentialGroup()
.addGap(187, 187, 187)
.addComponent(jCheckBox1))
.addGroup(jp_principalLayout.createSequentialGroup()
.addGap(150, 150, 150)
.addComponent(jCheckBox2)))
.addGap(0, 184, Short.MAX_VALUE)))
);
jp_principalLayout.setVerticalGroup(
jp_principalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jp_principalLayout.createSequentialGroup()
.addGap(205, 205, 205)
.addComponent(jToggleButton1)
.addContainerGap(234, Short.MAX_VALUE))
.addGroup(jp_principalLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jp_principalLayout.createSequentialGroup()
.addGap(0, 108, Short.MAX_VALUE)
.addComponent(jButton1)
.addGap(1, 1, 1)
.addComponent(jButton2)
.addGap(91, 91, 91)
.addComponent(jCheckBox1)
.addGap(61, 61, 61)
.addComponent(jCheckBox2)
.addGap(0, 109, Short.MAX_VALUE)))
);
getContentPane().add(jp_principal, java.awt.BorderLayout.CENTER);
pack();
}//
/**
-
@param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new NewJFrame().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.ButtonGroup buttonGroup1;
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JCheckBox jCheckBox1;
private javax.swing.JCheckBox jCheckBox2;
private javax.swing.JToggleButton jToggleButton1;
private javax.swing.JPanel jp_principal;
// End of variables declaration
}
[quote=Diogodj]Olá Tiago eu usei o xStrean e já estou gerando o xml, gostaria só de pegar esse xml e colocar em um arquivo e depois ler o arquivi, acredito que o mais dificil já fiz que seria gerar o xml, caso queira olhar segue o código que gera e abre o xml abaixo.
…
[/quote]
bom para gravar em um arquivo o seu xml gerado pelo XStream é bem simples, basta instanciar um objeto do tipo OutputStream… segue um pequeno exemplo:
[code]
File xmlMap = new File(caminho_do_seu_arquivo);
OutputStream streamOut = null;
if (!(xmlMap.exists()))
xmlMap.createNewFile();
else {
xmlMap.delete();
xmlMap.createNewFile();
}
streamOut = new FileOutputStream(xmlMap);
XStream xstream = new XStream(new DomDriver());
xstream.toXML(seuObjeto, streamOut);[/code]
e a proposito quando for postar códigos no forum, utilize as tags code… como eu fiz =]
boa sorte
OK Anderson, valeu show de bola e para abrir esse arquivo xml ?? tens um exemplo de código, queria somente os comandos java para eu abrir um arquivo.
Estou gerando o xml e jogando numa string e imprimindo na tela, queria poder jogar isso num arquivo.
XStream xstream = new XStream();// Criando um objeto XStream
String string_jpanelEmXML = xstream.toXML(area_de_trabalho);// Passando os dados do JPanel Java para XML e salva em uma String
System.out.println(string_jpanelEmXML);//imprime XML na tela
S
[quote=Diogodj]Estou gerando o xml e jogando numa string e imprimindo na tela, queria poder jogar isso num arquivo.
XStream xstream = new XStream();// Criando um objeto XStream
String string_jpanelEmXML = xstream.toXML(area_de_trabalho);// Passando os dados do JPanel Java para XML e salva em uma String
System.out.println(string_jpanelEmXML);//imprime XML na tela
S[/quote]
eh o codigo que postei… ele vai gerar um arquivo com o seu XML gerado…
Anderson está dando erro na ultima linha, qual objeto vai lá dentro na ultima linha de código ??
[code] XStream xstream = new XStream(new DomDriver());
String string_jpanelEmXML = xstream.toXML(area_de_trabalho);// Passando os dados do JPanel Java para XML e salva em uma String
File xmlMap = new File( "c:/" );
OutputStream streamOut = null;
if (!(xmlMap.exists())) {
xmlMap.createNewFile();
} else {
xmlMap.delete();
xmlMap.createNewFile();
}
streamOut = new FileOutputStream(xmlMap);
//XStream xstreamr = new XStream(new DomDriver());
xstream.toXML(seuObjeto, streamOut);
[/code]
[quote=Diogodj]Anderson está dando erro na ultima linha, qual objeto vai lá dentro na ultima linha de código ??
[code] XStream xstream = new XStream(new DomDriver());
String string_jpanelEmXML = xstream.toXML(area_de_trabalho);// Passando os dados do JPanel Java para XML e salva em uma String
File xmlMap = new File( "c:/" );
OutputStream streamOut = null;
if (!(xmlMap.exists())) {
xmlMap.createNewFile();
} else {
xmlMap.delete();
xmlMap.createNewFile();
}
streamOut = new FileOutputStream(xmlMap);
//XStream xstreamr = new XStream(new DomDriver());
xstream.toXML(seuObjeto, streamOut);
[/code]
[/quote]
[code] XStream xstream = new XStream(new DomDriver());
String string_jpanelEmXML = xstream.toXML(area_de_trabalho);// Passando os dados do JPanel Java para XML e salva em uma String
File xmlMap = new File("c:/meuxml.xml");
OutputStream streamOut = null;
if (!(xmlMap.exists())) {
xmlMap.createNewFile();
} else {
xmlMap.delete();
xmlMap.createNewFile();
}
streamOut = new FileOutputStream(xmlMap);
//XStream xstreamr = new XStream(new DomDriver());
xstream.toXML(area_de_trabalho, streamOut);
[/code]
veja se funciona…
se tiver dando erro, poste o erro aqui
Anderson !
dá erro
incompatible types
required: com.itextpdf.text.pdf.codec.Base64.OutputStream
found: java.io.FileOutputStream
Circundar com …
NA SEGUINTE LINHA
streamOut = new FileOutputStream(xmlMap);
[code]String string_jpanelEmXML = xstream.toXML(area_de_trabalho);// o area_de_trabalho seria o caminho para area de trabalho?
File xmlMap = new File("c:/meuxml.xml");//esse é o local onde vou salvar meu xml?
[/code]
???
deu certo já galera… valew 