XML Reading ASP.NET C#

Модератор: Злобный

Аватара пользователя
MXC
Продвинутый
Сообщения: 267
Зарегистрирован: Чт сен 18, 2003 03:32
Откуда: Кишингтаун
Контактная информация:

Сообщение MXC »

Собственно по этому URL (http://www.bnm.md/apps/ofexch_xml.jsp?l ... 11/10/2006) находится XML документ с курсами валют. Задача вывести некоторе курсы (USD,EUR) у себя на страничке

CharCode - нод кода валюты для поиска...
Нужно считать нод Value когда reader дойдет до этого нода...

XmlTextReader xreader = new XmlTextReader ("http://www.bnm.md/apps/ofexch_xml.jsp?l ... 11/10/2006");

while (xreader.Read())
if (xreader.NodeType == XmlNodeType.Element && xreader.Name == "CharCode")
{
if (xreader.NodeType == XmlNodeType.Text && xreader.Value == "USD")
{
ListBox1.Items.Add("b:"+xreader.Value);

}

}

Собственно бред, но торможу уже давно..

[off]добавлено спустя 16 часов 2 минуты:[/off]

Задачка меняется))

Собственно есть такой файл:
http://www.bnm.md/apps/ofexch_xml.jsp?l ... 11/10/2006

Мне нужно выбрать значения <Value> для <CharName> == ГSD :D
хочу сделать панель курсов валют, автоматичеки чтобы обовлялась ))

Если можно кусочек кода..)
Аватара пользователя
Злобный
Завсегдатай
Сообщения: 2716
Зарегистрирован: Сб июн 18, 2005 21:05
Контактная информация:

Сообщение Злобный »

[off]MXC,
Тебе за это платят? Если да, то пиво торчишь. Если просто учишься, то хрен с ним.[/off]

Код: Выделить всё

//Лист валют, которые тебя интересуют
List<string> myCharCodes = new List<string>();
myCharCodes.Add("RON");
myCharCodes.Add("USD");
myCharCodes.Add("EUR");
myCharCodes.Add("UAH");

XmlTextReader xreader = new XmlTextReader("http://www.bnm.md/apps/ofexch_xml.jsp?lang=1&data=11/10/2006");

//Переменные, куда будут читаться нужные тебе значения нодов
string charCode = null;
string value = null;

while (xreader.Read())
{
    if (xreader.Name == "CharCode" && xreader.NodeType == XmlNodeType.Element)
    {
        xreader.Read();
        charCode = xreader.Value;
    }
    if (xreader.Name == "Value" && xreader.NodeType == XmlNodeType.Element)
    {
        xreader.Read();
        value = xreader.Value;
    }
    if (xreader.Name == "Valute" && reader.NodeType == XmlNodeType.EndElement)
    {
        if (myCharCodes.Contains(charCode))
        {
            ListBox1.Items.Add(charCode + ": " + value);
        }
    }
}
Если пользуешься не вторым дотнетом, то List<string> замени на простой ArrayList. А вообще, лучше парсить этот Xml в лист объектов, хранящих все свойства валюты. А потом этот лист объектов давать твоему листбоксу (или гриду, или еще чему-то) как DataSource - мало ли зачем они тебе еще в дальнейшем понадобятся - не придется переписывать лишний раз.
Аватара пользователя
MXC
Продвинутый
Сообщения: 267
Зарегистрирован: Чт сен 18, 2003 03:32
Откуда: Кишингтаун
Контактная информация:

Сообщение MXC »

Злобный,
Пиво??? невапрос...
Говри что где когда...?:))))

Платить будут тогда когда научусь) не моя это профессия, разбираюсь децл, для знакомых всякие штучки на их сайт прикручиваю))
Аватара пользователя
Злобный
Завсегдатай
Сообщения: 2716
Зарегистрирован: Сб июн 18, 2005 21:05
Контактная информация:

Сообщение Злобный »

[off]MXC,
Вот когда станут платить, тогда и пиво. :) А так пока не с чего.[/off]
Аватара пользователя
nestap
Юзер
Сообщения: 56
Зарегистрирован: Пт дек 01, 2006 10:28
Откуда: Chisinau
Контактная информация:

Сообщение nestap »

a etat kod idiot HTML? ili tolica v PHP ?
Аватара пользователя
Злобный
Завсегдатай
Сообщения: 2716
Зарегистрирован: Сб июн 18, 2005 21:05
Контактная информация:

Сообщение Злобный »

nestap,
это серверный код. написан на си шарп. на html не пойдет. если ты хочешь с клиента его тащить, надо на JScript написать функцию, которая тащит Xml с указанного адреса, парсит его и строит таблицу (или что там у тебя). Html - язык разметки. Программировать на нем не получится.
Аватара пользователя
nestap
Юзер
Сообщения: 56
Зарегистрирован: Пт дек 01, 2006 10:28
Откуда: Chisinau
Контактная информация:

Сообщение nestap »

:cry: no kak mne resiti etu prablemu?
Аватара пользователя
Злобный
Завсегдатай
Сообщения: 2716
Зарегистрирован: Сб июн 18, 2005 21:05
Контактная информация:

Сообщение Злобный »

[off]nestap,
А как эта проблема у тебя возникла?[/off]
Аватара пользователя
nestap
Юзер
Сообщения: 56
Зарегистрирован: Пт дек 01, 2006 10:28
Откуда: Chisinau
Контактная информация:

Сообщение nestap »

nu vot u mine esti adin site (FREE) http://nestap.com.md
i zahatelosi smeniti dizain no resil pastaviti tam pagodu-(resil) i Cursul Valutar
no ne znaiu kak
plizzz pamagi
budu priznatelnii :cry:
Аватара пользователя
Злобный
Завсегдатай
Сообщения: 2716
Зарегистрирован: Сб июн 18, 2005 21:05
Контактная информация:

Сообщение Злобный »

чтобы работало под любой браузер, парсить Xml нужно, пожалуй, используя Regular Expressions в Java Script, что утомительно.

выбери из поста все слова, написанные не русскими буквами и почитай про это. а вообще, не вполне ясно, зачем на этом сайте курсы валют.
Аватара пользователя
nestap
Юзер
Сообщения: 56
Зарегистрирован: Пт дек 01, 2006 10:28
Откуда: Chisinau
Контактная информация:

Сообщение nestap »

eta starii dizain ia haciu ulusiti eta
i isio ia uciusi
nu pamagi pajalusta :?
Аватара пользователя
Злобный
Завсегдатай
Сообщения: 2716
Зарегистрирован: Сб июн 18, 2005 21:05
Контактная информация:

Сообщение Злобный »

nestap писал(а):i isio ia uciusi
а я еще работаю. прямо щас. и неинтересный код с нуля не пишу. тем более ради непонятной цели "улучшить дизайн". почитай, разберись, напиши. если что-то будет непонятно, или не будет выходить, я объясню и исправлю. а учиться за тебя или писать за тебя я ничего не стану - не вижу в этом смысла.
Аватара пользователя
nestap
Юзер
Сообщения: 56
Зарегистрирован: Пт дек 01, 2006 10:28
Откуда: Chisinau
Контактная информация:

Сообщение nestap »

na samom dele ia haciu sazdati Satelit Forum http://sat.com.md pacti zaconcil no ne znaiu kak staviti tam S CURSOM VALIUT?

izvini sto nebil atcrvenin
prasti!!!!!!

pamagi pajalusta :cry:

no stota siceas ne rabotaet ot servera 20.50 2-5-2007
Аватара пользователя
TocSYK
Продвинутый
Сообщения: 382
Зарегистрирован: Сб окт 30, 2004 14:14
Откуда: Êèøèíãòîí ñèòè
Контактная информация:

Сообщение TocSYK »

òàêóþ çàäà÷ó äàëè íà òåñò-ïåðèîä â îäíîé îòå÷åñòâåííîé ôèðìå ( .NET ) :)

ÿ òî çäåëàë ñ áä

[off]ñ÷àñ ïðèêðåïëþ ñêðèí[/off]



Изображение


âîò çàìåøêàëñÿ è áðîñèë èäåþ íà ñ÷îò event-a â ñëó÷àå åñëè êëèåíò â 23.55 ÷àñîâ íî÷ü ñåë çà êîìï (íà ïîë ÷àñà ñêàæåì ) è ÷òîá åâåíò îïîâåñòèë åãî ÷òî êóðñ âàëþò ïîìåíÿëñÿ ðîâíî â 0.00 !

[off]äîáàâëåíî ñïóñòÿ 14 ìèíóò:[/off]

add &/or erase valutes â Edit ìåíþ )
Аватара пользователя
Злобный
Завсегдатай
Сообщения: 2716
Зарегистрирован: Сб июн 18, 2005 21:05
Контактная информация:

Сообщение Злобный »

TocSYK,
Причем тут бд? Тут надо тупо стянуть файл и отобразить его содержимое. И что за ивент? Кто его кидать должен? А подписываться на этот ивент кто должен? Сдается мне, у тебя совершенно не эта задача.
Аватара пользователя
TocSYK
Продвинутый
Сообщения: 382
Зарегистрирован: Сб окт 30, 2004 14:14
Откуда: Êèøèíãòîí ñèòè
Контактная информация:

Сообщение TocSYK »

íåò.....ïðîñòî èì õîòåëîñü óçíàòü ïîáîëüøå î ìîèõ çíàíèÿõ âîò îíè è äàëè çàäà÷ó òàêóþ è ñ áä ....


íà ñ÷îò åâåíòà - êèäàòñÿ îí äîëæåí àâòîìàòè÷åñêè â 0:00 ÷àñîâ íî÷è (eñëè ïðîãà çàïóøåíà)

{
MessageBox.Show("The courses have been updated");
Update();
}
Аватара пользователя
Злобный
Завсегдатай
Сообщения: 2716
Зарегистрирован: Сб июн 18, 2005 21:05
Контактная информация:

Сообщение Злобный »

TocSYK,
кем кидаться? ))) курсы проапдейтились в базе данных. база данных ивент никуда кидать не будет. единственный вариант, когда твоя модель с событием будет работать, это если их апдейтит то же самое приложение, которое показывает этот мессэдж-бокс. то есть приложение (толстый клиент), построенное по архитектуре клиент-сервер (от которой все уже отказываются в пользу 3-tier и SOA). У автора задача совсем другая. Между ней и тем, что описал ты, общего - только "курсы валют", и абсолютно ничего общего в требованиях.
Аватара пользователя
TocSYK
Продвинутый
Сообщения: 382
Зарегистрирован: Сб окт 30, 2004 14:14
Откуда: Êèøèíãòîí ñèòè
Контактная информация:

Сообщение TocSYK »

......ââîáøåì õðîìàåò ìîé ðóññêèé.....
âîçüì¸ì ïîäðóãîìó -- òû ìîæåø çäåëàòü òàê ÷òîá â çàðàííåå çàäàíîì âðåìåíè ìåñàæáîêñ ïîêàçûâàëñÿ íà ýêðàíå \?

[off]äîáàâëåíî ñïóñòÿ 16 ìèíóò:[/off]

äà è ïîäðóãîìó ÿ çäåëàë ....... ëèñò òåõ âàëþò ÿ ìàãó ñàì èçìåíÿòü (íåòó íàäîáíîñòè â êîäèíãå âñòàâèòü åñ÷î îäíó ñòðî÷êó äëÿ <List> ïîòîì êîìïèëèðîâàòüè.ò.ä.)
Аватара пользователя
Злобный
Завсегдатай
Сообщения: 2716
Зарегистрирован: Сб июн 18, 2005 21:05
Контактная информация:

Сообщение Злобный »

TocSYK,
Ну причем здесь окно? Задача не в отслеживании изменений. Да и редактирование листа валют тоже непричем. Вопрос не в этом. Вопрос в том, как парсить XML. Причем тут все остальное?

[off]Как окно показать по времени? Запускаешь Thread, в котором инициализируешь таймер, который при наступлении полуночи покажет окошко. Все.[/off]
Аватара пользователя
TocSYK
Продвинутый
Сообщения: 382
Зарегистрирован: Сб окт 30, 2004 14:14
Откуда: Êèøèíãòîí ñèòè
Контактная информация:

Сообщение TocSYK »

óñëàæíÿë ÿ ñåáå âñÿêèìè ïóòÿìè çàäà÷ó
Çëîáíûé писал(а):Êàê îêíî ïîêàçàòü ïî âðåìåíè? Çàïóñêàåøü Thread, â êîòîðîì èíèöèàëèçèðóåøü òàéìåð, êîòîðûé ïðè íàñòóïëåíèè ïîëóíî÷è ïîêàæåò îêîøêî. Âñå.
cool seniks
Ответить

Вернуться в «Программирование»