Найти в XML файле значения ID 2
|
|
robertono | Дата: Пятница, 12 Июля 2013, 23:40 | Сообщение # 1 |
Чокнутый Кот
Сейчас нет на сайте
| Есть такой xml файл: Код <Items> <Item ID="1"> <Name>Камень</Name> </Item> <Item ID="2"> <Name>Куб</Name> <Amount>1</Amount> <SizeX>1</SizeX> <SizeY>1</SizeY> <SizeZ>1</SizeZ> <WeightInKG>10</WeightInKG> </Item> </Items> Как я могу быстро из этого файла вытащить дочерние значения ID 2 ? C#Добавлено (12.07.2013, 23:40) --------------------------------------------- Все не нужно уже.
Сообщение отредактировал robertono - Пятница, 12 Июля 2013, 22:59 |
|
| |
Topkoder | Дата: Суббота, 13 Июля 2013, 01:25 | Сообщение # 2 |
частый гость
Сейчас нет на сайте
| Вот мой код: Код public void LoadXML(string FileName) { DataSet AuthorsDataSet = new DataSet(); AuthorsDataSet.ReadXml(FileName); dataGridView1.DataSource = AuthorsDataSet; dataGridView1.DataMember = "authors"; dataGridView1.Columns[8].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill; } При такой структуре xml Код <Authors_Table> <authors> <Пациент>Игорь Сергеевич</Пациент> <Адрес>г.Харьков, ул.Ощепкова 320, кв. 132</Адрес> <Диагноз>Глаукома</Диагноз> <Симптомы>Умеренные головные боли, боли в глазном яблоке</Симптомы> <Дата_поступления>30.05.2013</Дата_поступления> <Препараты>Препараты для улучшения кровоснабжения внутренних оболочек глаза</Препараты> <Терапия>Офтальмогипотензивная терапия.</Терапия> <Фамилии_врачей>И.Шишкин, С.Пушкин, О.Лихачов</Фамилии_врачей> <Дата_выписки>08.07.2013</Дата_выписки> </authors> </Authors_Table> Добавлено (13.07.2013, 01:23) --------------------------------------------- Если вдруг кому нить надо будет) Добавлено (13.07.2013, 01:24) --------------------------------------------- dataGridView1.Columns[8].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill; Просто растягивает последний столбик на ширину всего dataGridView1 Добавлено (13.07.2013, 01:24) --------------------------------------------- Код из моего курсача)) Добавлено (13.07.2013, 01:25) --------------------------------------------- Ну хотя тебе наверно в переменные надо было) Ну да все равно, мож кому то пригодится
|
|
| |
robertono | Дата: Воскресенье, 14 Июля 2013, 19:50 | Сообщение # 3 |
Чокнутый Кот
Сейчас нет на сайте
| Topkoder, вижу вы не плохо в XML разбираетесь. Есть такой xml : Код <Items> <Item ID="1"> <Name>Камень</Name> </Item> <Item ID="2"> <Name>Куб</Name> <Amount>1</Amount> <SizeX>1</SizeX> <SizeY>1</SizeY> <SizeZ>1</SizeZ> <WeightInKG>10</WeightInKG> </Item> </Items> И есть 1 string переменная и 5 int переменных. Как я могу в эти переменные занести значения из ID 2 ? Вот эти : Код <Name>Куб</Name> <Amount>1</Amount> <SizeX>1</SizeX> <SizeY>1</SizeY> <SizeZ>1</SizeZ> <WeightInKG>10</WeightInKG> C#Добавлено (14.07.2013, 19:50) --------------------------------------------- Сделал сам, думаю кому нибудь понадобиться. Да и пусть просто полежит на форуме. Код string strFilename = "Assets/Scripts/My_Inventory/Items.xml"; XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(strFilename); XmlNodeList xnList = xmlDoc.SelectNodes("/Items/Item1"); foreach (XmlNode xn in xnList) { Debug.Log(xn["Name"].InnerText); Debug.Log(xn["Amount"].InnerText); Debug.Log(xn["SizeX"].InnerText); Debug.Log(xn["SizeY"].InnerText); Debug.Log(xn["SizeZ"].InnerText); Debug.Log(xn["WeightInKG"].InnerText); }
|
|
| |
Vinchensoo | Дата: Воскресенье, 14 Июля 2013, 20:02 | Сообщение # 4 |
Злобный социопат с комплексом Бога
Сейчас нет на сайте
| Это же дотнет, используйте xml.LINQ, удобнее
|
|
| |
robertono | Дата: Воскресенье, 14 Июля 2013, 20:09 | Сообщение # 5 |
Чокнутый Кот
Сейчас нет на сайте
| Vinchensoo, но работает ведь. А что быстрее работает?
|
|
| |
Alastar | Дата: Воскресенье, 14 Июля 2013, 21:00 | Сообщение # 6 |
постоянный участник
Сейчас нет на сайте
| Цитата (robertono) Vinchensoo, но работает ведь. А что быстрее работает? По-моему, быстрее всего работает с двоичными данными.
Big Boobs (+18 only!)
|
|
| |
Vinchensoo | Дата: Воскресенье, 14 Июля 2013, 21:07 | Сообщение # 7 |
Злобный социопат с комплексом Бога
Сейчас нет на сайте
| Цитата (robertono) Vinchensoo, но работает ведь. А что быстрее работает? Не знаю, LINQ банально удобнее. Имхо, одна из немногих вещей, за которые можно любить дотнет.
Тык
|
|
| |
robertono | Дата: Воскресенье, 14 Июля 2013, 21:50 | Сообщение # 8 |
Чокнутый Кот
Сейчас нет на сайте
| Vinchensoo, хм , какая вещ изза которой можно любить дотнет? Alastar, что за двоичные данные?)
|
|
| |
Alastar | Дата: Воскресенье, 14 Июля 2013, 22:16 | Сообщение # 9 |
постоянный участник
Сейчас нет на сайте
| Цитата (robertono) Alastar, что за двоичные данные?) Ооооооу, сударь, дела плохи) Не знать что такое двоичные данные это сильно. Сбсно, я намекал на использование двоичного форматерра вместо XML, у него есть свои плюсы.
Big Boobs (+18 only!)
Сообщение отредактировал Alastar - Воскресенье, 14 Июля 2013, 22:17 |
|
| |
robertono | Дата: Воскресенье, 14 Июля 2013, 23:57 | Сообщение # 10 |
Чокнутый Кот
Сейчас нет на сайте
| Alastar, что что ? Добавлено (14.07.2013, 23:57) --------------------------------------------- Мне, для моих то совсем не больших знаний будет достаточно того что я написал и xml.linq
|
|
| |
Vinchensoo | Дата: Понедельник, 15 Июля 2013, 08:30 | Сообщение # 11 |
Злобный социопат с комплексом Бога
Сейчас нет на сайте
| Цитата (robertono) Vinchensoo, хм , какая вещ изза которой можно любить дотнет? LINQ Цитата (Alastar) Ооооооу, сударь, дела плохи) Не знать что такое двоичные данные это сильно. А смысл использовать двоичные данные? Xml обычно для хранения конфигов и им сочувствующих используется. Бинари, конечно, быстро, но еще надо знать, как хранить, а-то поиск займет больше времени в кривых руках)
|
|
| |