Fórum Ler arquivo XML #254139
13/10/2004
0
após ter feito um ClientDataSet1.SaveToFile(´C:\TESTE.XML´,dfXML), como fazer para ler o arquivo xml, já tentei LoadFromFile, mas os dados não são lidos. O que fazer?
Grato.
Lperosa
Curtir tópico
+ 0Posts
13/10/2004
Fórum Vini
tente usar a propriedade FileName e depois o método Open.
with ClientDataset1 do begin FileName:= ´NomeDoArquivo.xml´; Open; end;
Espero ter ajudado,
Vincius;
Gostei + 0
13/10/2004
Lperosa
Valeu.
Gostei + 0
13/10/2004
Fórum Vini
Mas o que acontece? Dá exceção?
Gostei + 0
13/10/2004
Lperosa
Gostei + 0
13/10/2004
Fórum Vini
(Menos mal :lol: )
Você tem certeza que os dados estão guardados corretamente no XML?
Eu acabei de testar aqui e funcionou.. :roll:
Tente colocar um DBGrid(se já tiver, crie um novo) no seu form e ligue-o ao DataSource que estiver ligado ao ClientDataset para verificar se realmente os dados não estão sendo carregados ou exibidos.. Verifique também a propriedade Filter do seu ClientDataset
Gostei + 0
13/10/2004
Lperosa
Após inserir os dados,
ClientDataSet.SaveToFile(´teste.xml´,dfXML);
ClientDataSet.EmptyDataSet;
ClientDataSet.LoadFromFile(´teste.xml´);
ClientDataSet.Open;
O ClientDataSet já está ligado ao DBGrid, porem os dados não aparecem.
Não sei o que pode ser...
Gostei + 0
13/10/2004
Lperosa
Desculpe no ClientDataSet.LoadFromFile(´teste.xml´); eu faço um ClientDataSet.FileName := ´teste.xml´;
Gostei + 0
13/10/2004
Fórum Vini
Lembrei agora de um problema parecido que tive.. por você estar usando o SaveToFile isso não deveria acontecer, mas não custa tentar.. coloque um Close logo após o SaveToFile e veja no que dá...
Se nem assim der, tem como vc me mandar o teste.xml pra que eu veja aqui?
Gostei + 0
13/10/2004
Lperosa
Gostei + 0
13/10/2004
Fórum Vini
Você enviou para o meu email antigo, que inclusive já foi desativado pelo pessoal do hotmail.. tem como vc mandar de novo para o vinifreis@yahoo.com.br ou então para vini.reis@gmail.com?
Desculpa o incômodo,
T+,
Vinicius;
Gostei + 0
13/10/2004
Rômulo Barros
Os dados não aparecem e nunca irão aparecer, uma vez que após a inserção vc está [u:09e56b662e][b:09e56b662e]limpando[/b:09e56b662e][/u:09e56b662e] os dados do XML com o commando [b:09e56b662e]EmptyDataSet[/b:09e56b662e].
[color=red:09e56b662e][u:09e56b662e][b:09e56b662e]Segue a solução:[/b:09e56b662e][/u:09e56b662e][/color:09e56b662e]
ClientDataSet.SaveToFile(´teste.xml´,dfXML); // ClientDataSet.EmptyDataSet; Retire esta linha ClientDataSet.LoadFromFile(´teste.xml´); ClientDataSet.Open;
Gostei + 0
13/10/2004
Lperosa
Fico grato pelo seu interesse e ajuda. Quando precisar de algo não exite em perguntar. Valeu.
Gostei + 0
13/10/2004
Fórum Vini
[/quote:d03ea42d60]
Eu até concordo, mas se a propriedade FileName não estiver setada, isso não vai fazer diferença alguma, já que o ClientDataSet não vai alterar nada no arquivo.. ele manda salvar antes de limpar..
Você deve ter deixado alguma coisa no Filter do cds, ou então sei lá.. :lol:
( Foi por isso que eu tinha pedido pra que você colocasse outro DbGrid no form, às vezes a gente muda algumas propriedades do componente e esquece )
Fico feliz por ter dado certo :D
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)