• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

n1ckooo

[Duvida] C# Guardar Simples XML

6 mensagens neste tópico

olá a todos.

Como é que faço para criar um arquivo *.xml do genero do seguinte...

- <XML_MUSIC>
  <Musicas>nirvana - come as you are<Musicas> 
  <Musicas>nirvana - About a girl</Musicas> 
<Musicas>Xutos- Casinha </Musicas> 
  </XML_MUSIC>

Preferia usar o xmldocument penso que seja melhor ou não?

Outra questão é que isso tinha que ser automatico, no exemplo acima estão 3 musicas mas poderia ser 4 ou 100 dependendo da escolha do utilizador.

Para terem uma ideia do que se trata é o seguinte o utilizador escolhe uma directoria com musicas eo programa tem que ir buscar a directoria e nome do de todas as musicas e guardar num ficheiro XML..

desculpem se não expliquei bem, tou no trabalho e estou a escever meio a pressa ..

obrigado

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Podes usar xmldocument e xmlelement para fazer isso. É extremamente simples e fácil. Se precisares de ajuda no código posso fazer aqui algo para te ajudar.

Fiquem bem

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Podes usar xmldocument e xmlelement para fazer isso. É extremamente simples e fácil. Se precisares de ajuda no código posso fazer aqui algo para te ajudar.

Fiquem bem

Pois penso que preciso mesmo da tua ajuda, o que tenho para já é o seguinte:

//Cria o obj            
FolderBrowserDialog AdicionarPasta = new FolderBrowserDialog();
// Pasta defaut
            AdicionarPasta.RootFolder = Environment.SpecialFolder.MyComputer;
//Mostra a caixa para adicionar a pasta, se for ok guarda o o caminho da pasta Ex: D:\Musicas
            if (AdicionarPasta.ShowDialog(this) == DialogResult.OK) {
                CaminhoPasta = AdicionarPasta.SelectedPath;
            };
// Adiciona o caminho a uma listbox do parecido com o adicionar a bibliteca, no windows media player
            lst_pasta.Items.Add(CaminhoPasta);
// ojecto DirectoryInfo  serve para depois poder selecionar todos mp3 da pasta referida
            DirectoryInfo Caminho = new DirectoryInfo(CaminhoPasta);
           // Aqui o ficheiro e um fileinfo array
            ficheiro = Caminho.GetFiles("*.mp3");

Agora não tou a ver como posso fazer para passar o nome do ficheiro completo (ex: D:\Musicas\Nirvana-come as you are.mp3) que está guardado no array ficheiro.

Já tive a ideai de fazer um ciclo for mas para isso precisava saber quantas file tem o array ficheiro.

Opá se souberem como me ajudar agradecia.

O codigo que pus é só um teste não precisa de ficar assim se tiverem uma ideia melhor, digam porque tou aqui para aprender mais um pouco :P

Obrigado

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
foreach(string nomeFicheiro in ficheiro) {
    Debug.WriteLine(nomeFicheiro);
}

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

foreach(string nomeFicheiro in ficheiro) {
    Debug.WriteLine(nomeFicheiro);
}

Não percebi muito deste codigo.

Tal como o nazgulled disse podes usar um foreach.

Pois acredito que sim mas aquele codigo não fucionou muito bem, pois secalhar eu não sei por no sitio certo...

Neste momento tenho este codigo, e dá me o erro da referencia do objecto...

FolderBrowserDialog AdicionarPasta = new FolderBrowserDialog();
            AdicionarPasta.RootFolder = Environment.SpecialFolder.MyComputer;
            if (AdicionarPasta.ShowDialog(this) == DialogResult.OK) {
                CaminhoPasta = AdicionarPasta.SelectedPath;
            };
            lst_pasta.Items.Add(CaminhoPasta);
            DirectoryInfo Caminho = new DirectoryInfo(CaminhoPasta);
            ficheiro = Caminho.GetFiles("*.mp3");
          
             int countagem = Convert.ToInt32(ficheiro.Count());
           
            for (int i = 0; i < countagem; i++)
            {
                XmlDocument myxml = new XmlDocument();
                if (File.Exists("C:\\nkoMp3player.xml"))
                {
                
                }
                else
                {
                myxml.LoadXml("<nkoMp3player />");
                XmlElement[] Elemento = new XmlElement[countagem - 1];   //--> isto não pode estar aqui , tem que ir para fora do ciclo
                Elemento[i].InnerText = ficheiro[i].DirectoryName.ToString();
                myxml.DocumentElement.AppendChild(Elemento[i]);
                myxml.Save("C\\nkoMp3player.xml");
                }
            }

agora que reparei no codigo penso que tenho o problema.. Ja especifiquei mas nao funciona na mesma

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora