Erro ao salvar arquivo xml na pasta destino

06/07/2013

0

Olá boa tarde!

Estou usando o Eclipse jun + Android.
(iniciante em Android)

TEnho q gerar um XML e gravalo num diretório específico, mas gera um erro ao salvar.

Alguém poderi me ajudar nesta ?

Desde já meus agradecimentos a quem puder ajudar.

100+

ANT.CARLOS/SP




--------------------ROTINA GERA XML------------------------------------------------------------------
public void setGeraXML(ArrayList<String> lista ) throws IOException {
data = ManipulaData.getDataAtual();

String dirXml = "c:/temp4/";
String nomArq = "Arquivo.xml";

Calendar agora = Calendar.getInstance();
// horas, minutos e segundos2
horas = agora.get(Calendar.HOUR);
minutos = agora.get(Calendar.MINUTE);
segundos = agora.get(Calendar.SECOND);

StringBuilder xml = new StringBuilder();

xml.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>")
.append("<det nItem= "+1+">")
.append("<ddmov>")
.append("<codbar>999999999999</codbar>")
.append("<data>99/99/99</data")
.append("<horas>99:99:99</horas")
.append("<ddmov>")
.append("<det>");

System.out.println(xml.toString());


//...Chama a rotina Salvar....//
String str = new String();
str = xml.toString();
Salvar sv = new Salvar(str, dirXml, nomArq);
}
}

--------------------ROTINA SALVA------------------------------------------------------------------
package com.br.teste012;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.UnsupportedEncodingException;
import java.io.Writer;

/**
*
* @author Antonio Carlos
*/
public class Salvar {

public Salvar(String vXml, String dirXml, String nomArq) throws UnsupportedEncodingException, FileNotFoundException, IOException {

File diretorio = new File(dirXml);
if (!diretorio.exists()) {
diretorio.mkdirs();
}

Writer file = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(dirXml+nomArq),"ISO-8859-1"));
file.write(vXml);
file.close();
}
}

--------------------ERROS GERADOS-----------------------------------------------------------------
aqui ok - 07-06 19:31:52.253: I/System.out(980): <?xml version="1.0" encoding="UTF-8"?><det nItem= 1><ddmov><codbar>999999999999</codbar><data>99/99/99</data<horas>99:99:99</horas<ddmov><det>

erro...
07-06 19:31:52.263: W/System.err(980): java.io.FileNotFoundException: /c:/temp4/Arquivo.xml: open failed: ENOENT (No such file or directory)
07-06 19:31:52.275: W/System.err(980): at libcore.io.IoBridge.open(IoBridge.java:416)
07-06 19:31:52.275: W/System.err(980): at java.io.FileOutputStream.<init>(FileOutputStream.java:88)
07-06 19:31:52.275: W/System.err(980): at java.io.FileOutputStream.<init>(FileOutputStream.java:128)
07-06 19:31:52.275: W/System.err(980): at java.io.FileOutputStream.<init>(FileOutputStream.java:117)
07-06 19:31:52.283: W/System.err(980): at com.br.teste012.Salvar.<init>(Salvar.java:30)
07-06 19:31:52.283: W/System.err(980): at com.br.teste012.GeraXml.setGeraXML(GeraXml.java:63)
07-06 19:31:52.283: W/System.err(980): at com.br.teste012.MainActivity$3.onClick(MainActivity.java:70)
Antonio Jesus

Antonio Jesus

Responder

Posts

07/07/2013

Marcelo Senaga

Vc está tentando salvar um arquivo XML gerado no Android numa pasta do Windows?
Responder

08/07/2013

Antonio Jesus

Humm!!!!!
Sim, é um teste.

Então o q devo fazer ?


100+

ANT.CARLOS/SP
Responder

09/07/2013

Marcelo Senaga

Acredito não ser possível. Não teria como acessar o Windows como se fosse uma aplicação normal.
Responder

14/07/2013

Antonio Jesus

Obtive a resposta aqui:

http://www.javac.com.br/jc/posts/list/1590-nao-consigo-gravar-um-arquivo-xml.page

100+

ANT.CARLOS/SP
Responder

14/07/2013

Marcelo Senaga

Show! O cara grava num dispositivo externo. De fato, não daria para acessar as pastas do Windows diretamente.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar