none
Xml no C# RRS feed

  • Pergunta

  • montei uma rotina em  C# que lê o xml e faz umas alterações,

    foreach (XmlNode node in arrNodes)
    {

    XmlNode objIndexador = node.SelectSingleNode("classeoperacao");
    if (objIndexador.InnerText == "D")
    {
    XmlNode objPerc = node.SelectSingleNode("cnpjinter");
    objPerc.InnerText = "00000000000000";

    }

    depois de ler todo, uma tag  que estava vazia <aa></aa> ficou com alguns espçaos <aa>       </aa>. dando erro em outrao rotina.

    alguem ja viu isso? 

    sexta-feira, 29 de setembro de 2006 01:13

Respostas

  • Boa Noite.

    PDH...

    Não seria melhor você usar Serialização e Deserialização do XML e trabalhar tudo em OBJETO ?

    Assim seu XML sempre vai ter o mesmo padrão, sem acontecer essas coisas bizarras.

    Na minha opnião acho que deveria fazer isso ao inves de ficar em Pânico com este outro problema.

    Grande Abraço.

     

     

    terça-feira, 28 de novembro de 2006 02:46

Todas as Respostas

  • Olá,

    Este elemento que apresentou mudanças (<aa>) é, em algum momento, alterado pela sua rotina?

    Em que momento você observa esses espaços? antes de salvar o documento em disco ou ainda em memória?

    Seu caso é interessante porque o XML normaliza espaços em branco dentro dos documentos, ou seja, um espaço em branco, caracter de tabulação, retorno de carro (CR) ou line feed (LF) são normalizados para um único espaço. Mesmo que eles ocorram repetidas vezes um ao lado do outro, o XML parser irá normalizar esses espaços em 1 (um) somente. Algo mais pode estar acontecendo para isso estar sendo observado.

    Um abraço!

    -----

    Fábio Vazquez [C# MVP]

    Blog: http://www.phidelis.com.br/blogs/fabiovazquez

     

     

    sábado, 14 de outubro de 2006 21:02
  • E ae Fábio, então cara, depois de alguns testes percebi que os espaços estão aparecendo quando o arquivo é salvo.

    faço assim para salva-lo

    documento.Save(openFileDialog1.FileName);

    cara, nao sei se é a configuração daqui, mas eu copiei um trecho do xml e qdo colo aqui ele vem sem espaço..

    "xml original"

    <codanbid>108472</codanbid>

    <tipofundo>209</tipofundo>

    <nivelrsc></nivelrsc>

    </header>

     

    "xml modificado"

    <codanbid>108472</codanbid>

    <tipofundo>209</tipofundo>

    <nivelrsc>

    </nivelrsc>

    </header>

     

    Cara, to ficando em panico com isso já...

    Valew

     

    quinta-feira, 19 de outubro de 2006 18:49
  • Boa Noite.

    PDH...

    Não seria melhor você usar Serialização e Deserialização do XML e trabalhar tudo em OBJETO ?

    Assim seu XML sempre vai ter o mesmo padrão, sem acontecer essas coisas bizarras.

    Na minha opnião acho que deveria fazer isso ao inves de ficar em Pânico com este outro problema.

    Grande Abraço.

     

     

    terça-feira, 28 de novembro de 2006 02:46