Подскажите, пожалуйста, как изменить текст в файле XML, который лежит на локальном диске, скажем C:\Temp\1.xml?
в технологии XML не силен, а разбираться нет времи, облазил MSDN и тут по поиску, и то что успел нарыть, только запутало...
в общем есть XML, который сформирован на основе шаблона InfoPath:
Здравствуйте, Lloyd, Вы писали:
L>Попробуй вот так.
S>>
S>> string sPath = @"C:\Temp\1.xml";
S>> XmlDocument doc = new XmlDocument();
S>> doc.Load(sPath);
S>> XmlNode node;
S>> XmlElement root = doc.DocumentElement;
S>> node = root.SelectSingleNode("//*[local-name() = 'str']"); // тут большой вопрос, правильно ли я ищу тег <my:str>?
S>> node.InnerText = DateTime.Now.ToString();
S>> doc.Save("sPath");
S>>
Немного подправил, но все равно не получается, это C# скрипт для программы и ее компилятор выдает ошибку в строке doc.Load(sPath); — Ошибка выполнения скрипта:Root element is missing.
что за корневой элемент может имется ввиду?
ошибки в компиляторе программы исключены.
скрипт:
string sPath = "C:\\Temp\\1.xml"; // для C# вроде так правильнее
XmlDocument doc = new XmlDocument();
doc.Load(@sPath);
XmlNode node;
XmlElement root = doc.DocumentElement;
node = root.SelectSingleNode("//*[local-name() = 'str']"); // тут большой вопрос, правильно ли я ищу тег <my:str>?
node.InnerText = DateTime.Now.ToString();
doc.Save(@sPath);
И еще такой ворос:
как я понял XmlDocument() используется для небольший файлов XML, для файлов объемом 20-30Kb этот метод будет нормально использовать?
Здравствуйте, Sergauskazzz, Вы писали:
S>Немного подправил, но все равно не получается, это C# скрипт для программы и ее компилятор выдает ошибку в строке doc.Load(sPath); — Ошибка выполнения скрипта:Root element is missing. S>что за корневой элемент может имется ввиду? S>ошибки в компиляторе программы исключены.
Сам xml-то покажи.
S>И еще такой ворос: S>как я понял XmlDocument() используется для небольший файлов XML, для файлов объемом 20-30Kb этот метод будет нормально использовать?
Здравствуйте, Lloyd, Вы писали:
L>Здравствуйте, Sergauskazzz, Вы писали:
S>>Можно ли загрузить исходный XML, игнорируя его ошибки(если даже они там есть)?
L>Нет
Проблема оказалась гараздо проще, у клиента не было доступа в к файлу xsn
Здравствуйте, Lloyd, Вы писали:
S>>Проблема оказалась гараздо проще, у клиента не было доступа в к файлу xsn
L>Для того, чтобы загрузить в XmlDocument доступ к этому файлу не нужен.
видимо, не совсем так..
существует шаблон форм InfoPath XSN, на основе которого создаетя XML файл, в котором описывается название поля и его значение
а описание полей и свойства формы хранятся в шаблоне формы, для нормального отображения файла XML необходим файл формы, без него XML выдает ошибку и собственно поэтому и не грузился в XMLDcocument