Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.04.2012, 11:39   #1
Dominatorsha
Пользователь
 
Регистрация: 27.11.2010
Сообщений: 43
По умолчанию Парсинг xml C#

В одном файле имеется
<list>
<item>book_g1</item>
</list>
допустим, во втором файле таже самая строчка, но
<string>
<id>10649</id>
<thing>book_g1</item>
</string>
Нужно чтоб программа нашла book_g1 во втором файле и посмотрела на строчку id, и спарсила ее в файл
Должно получиться следующее:
<list>
<item>10649</item>
</list>
___
Можете показать пример кода, который будет это делать?
Dominatorsha вне форума Ответить с цитированием
Старый 09.04.2012, 14:15   #2
Rififi
Старожил
 
Регистрация: 19.08.2009
Сообщений: 2,119
По умолчанию

Код:
var xml = new XmlDocument();
xml.Load(...);

var ids = xml.SelectNodes("//string/thing[text()='book_g1']/parent::string/id/text()");
Вот так ты получаешь список ID. дальше сливаешь их в файл.
для подробностей гоогле c# xmldocument, xpath
Rififi вне форума Ответить с цитированием
Старый 11.02.2013, 12:46   #3
xaxuxox
Новичок
Джуниор
 
Регистрация: 11.02.2013
Сообщений: 2
По умолчанию

Ув. Форумчане. Прошу вашей помощи.

Есть xml такого вида:
Код:
<VALUE.OBJECT>
<INSTANCE CLASSNAME="Header">
 <PROPERTY NAME="Date" TYPE="string">
  <VALUE>00/00/2000</VALUE>
 </PROPERTY>
 <PROPERTY NAME="Time" TYPE="string">
  <VALUE>16:00</VALUE>
 </PROPERTY>
</INSTANCE>
</VALUE.OBJECT>
Просмотрел кучу всевозможных тем и примеров, но решения для своего xml не нашел. Все вида <Заголовок> <данные> </данные> </Заголовок>.

Помогите пожалуйста спарсить.
xaxuxox вне форума Ответить с цитированием
Старый 11.02.2013, 14:03   #4
Abstraction
Старожил
 
Аватар для Abstraction
 
Регистрация: 25.10.2011
Сообщений: 3,178
По умолчанию

Цитата:
Все вида <Заголовок> <данные> </данные> </Заголовок>.
А у Вас какого вида? Из документа выдираете содержимое тега VALUE.OBJECT; из него - содержимое тега INSTANCE и т.д.
Abstraction вне форума Ответить с цитированием
Старый 11.02.2013, 14:07   #5
Rififi
Старожил
 
Регистрация: 19.08.2009
Сообщений: 2,119
По умолчанию

xaxuxox

Просмотрел кучу всевозможных тем и примеров, но решения для своего xml не нашел.

LOL.
Обычно "куча всевозможных тем и примеров" подразумевает что ты смотришь примеры, узнаешь способ как работать с интересующим тебя API, далее (самая сложная часть) используешь инструмент под названием "голова" чтобы адаптировать полученные знания к конкретной задаче. специально под каждую студень-лабу естессно никтто разжевывать не будет (((:

что до приведенного xml, то его и парсить-то и не надо. Сериализация рулит:

Код:
[XmlRoot("Value.Object")]
public class Value
{
	public class Instance
	{
		[XmlAttribute()]
		public string classname;

		public class Property
		{
			[XmlAttribute()]
			public string name;
			[XmlAttribute()]
			public string type;
			public string value;
		}

		[XmlElement("Property")]
		public Property[] items;
	}

	[XmlElement("Instance")]
	public Instance[] items;
}

Value val;
using (var wr = new FileStream("value.xml", FileMode.Open))
{
	var xml = new XmlSerializer(typeof(Value));
	val = (Value) xml.Deserialize(wr);
}
не проверял, но должно работать...
Rififi вне форума Ответить с цитированием
Старый 19.02.2013, 14:53   #6
xaxuxox
Новичок
Джуниор
 
Регистрация: 11.02.2013
Сообщений: 2
По умолчанию

Спасибо, но сделал немного по другому)
Xml.Linq решило мои проблемы)
xaxuxox вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
xml парсинг Letnab Работа с сетью в Delphi 0 07.01.2012 12:56
Парсинг XML Aleskandr PHP 1 24.08.2011 14:32
Парсинг XML. Abuhamed PHP 1 01.06.2011 22:24
Парсинг xml file Jakethefish C# (си шарп) 2 17.04.2011 14:31
Парсинг XML [Smarik] Общие вопросы Delphi 6 13.03.2010 17:38