Форум программистов, компьютерный форум, киберфорум
Наши страницы

C# для начинающих

Войти
Регистрация
Восстановить пароль
 
bjefix
3 / 3 / 1
Регистрация: 08.02.2015
Сообщений: 54
#1

Загрузка данных из файла - C#

26.11.2015, 16:04. Просмотров 326. Ответов 8
Метки нет (Все метки)

Разбираюсь с загрузкой из файла. Вот что напечатал)
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 var Book = from Books in XDocument.Load(path).Descendants("Book")
                       where Books.Attribute("id").Value == numericUpDown1.Value.ToString()
                       select new Class1
                       {
                           famaly = Books.Element("famaly").Value,
                           name = Books.Element("name").Value,
                           izdat = Books.Element("izdat").Value,
                           god = Convert.ToInt32(Books.Element("god").Value),
                           datawid = Books.Element("widacha").Value,
                           datawozwr = Books.Element("wozwrat").Value
                       };
            foreach (var bk in Book)
            {
                textBox1.Text = bk.famaly;
                textBox2.Text = bk.name;
                textBox3.Text = bk.izdat;
                textBox4.Text = bk.god.ToString();
                textBox5.Text = bk.datawid;
                textBox6.Text = bk.datawozwr;
            }
При запуске ругается на вот эти строки, мол Необработанное исключение типа "System.NullReferenceException" в Biblioteka.exe.
C#
1
2
3
4
5
6
7
8
select new Class1
                       {
                           famaly = Books.Element("famaly").Value,
                           name = Books.Element("name").Value,
                           izdat = Books.Element("izdat").Value,
                           god = Convert.ToInt32(Books.Element("god").Value),
                           datawid = Books.Element("widacha").Value,
                           datawozwr = Books.Element("wozwrat").Value
Вот и что тут делать?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.11.2015, 16:04
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Загрузка данных из файла (C#):

Загрузка данных из файла - C#
у меня есть программа на C# в ней есть привязка в которой дается логин и я генерирую пароль к программе (мне надо сделать так чтобы...

Загрузка данных из файла в класс - C#
Здравствуйте! Есть наработки программы ( конструктор кроссвордов ). Сохранение организовал. А вот как правильно сделать чтобы все...

Загрузка данных в List из файла - C#
Короче говоря нужно загрузить txt в List , получается так что он загружает только одну строчку . path = Application.StartupPath +...

Загрузка данных из текстового файла в List - C#
Помогите пожалуйста, столкнулся с проблемой. Не знаю как из текстовика поместить информацию в List. Не нашёл StreamReader'y правильное...

.NET 4.x Загрузка данных из файла, значения после определенного символа - C#
Программа подтягивает настройки из конфигурационного файла. Реализовал так что считывает файл построчно, дожидаясь необходимого...

Загрузка из файла. - C#
Вот есть загрузка из файла. Подскажите, в чем проблема? при выполнении на строке student qest = new student(); упорно пишет ошибку. ...

8
valera_21
364 / 350 / 64
Регистрация: 05.01.2010
Сообщений: 1,453
Завершенные тесты: 5
26.11.2015, 16:21 #2
bjefix, xml-ку покажите
0
bjefix
3 / 3 / 1
Регистрация: 08.02.2015
Сообщений: 54
26.11.2015, 16:24  [ТС] #3
valera_21,
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<Books>
  <Book id="1">
    <famaly>Кузнецова</famaly>
    <name>100 Грехов</name>
    <izdat>МГВРК</izdat>
    <god>2005</god>
    <datawidachi>21.04.2006</datawidachi>
    <datawozwrata>21.04.2015</datawozwrata>
  </Book>
  <Book id="2">
    <famaly>Пороховюк</famaly>
    <name>Голодные игры</name>
    <izdat>МинскДрук</izdat>
    <god>2010</god>
    <datawidachi>13.11.2011</datawidachi>
    <datawozwrata>01.12.2015</datawozwrata>
  </Book>
  <Book id="3">
    <famaly>Купревич</famaly>
    <name>Мамина дочька</name>
    <izdat>НесвижИздат</izdat>
    <god>1998</god>
    <datawidachi>08.02.2012</datawidachi>
    <datawozwrata>15.01.2016</datawozwrata>
  </Book>
</Books>
Добавлено через 35 секунд
Когда в дебаге проверяю, мне показывает что элемент найден правильно и все значения известны.
0
valera_21
364 / 350 / 64
Регистрация: 05.01.2010
Сообщений: 1,453
Завершенные тесты: 5
26.11.2015, 17:47 #4
первое что бросается в глаза:
C#
1
2
Books.Element("widacha")
Books.Element("wozwrat")
в xml
XML
1
2
<datawidachi>21.04.2006</datawidachi>
<datawozwrata>21.04.2015</datawozwrata>
далее. у вас класс Book точно реализует IEnumerable? ибо вы пытаетесь что-то там в нем перебрать в цикле
0
bjefix
3 / 3 / 1
Регистрация: 08.02.2015
Сообщений: 54
26.11.2015, 17:54  [ТС] #5
valera_21, Я не понял о чем речь) Раньше загружал данные из файла, все работало. Только xml я создавал в самой студии. А теперь он сам создается в корне. Но раньше у меня атрибутов не было у начального элемента Book.

Извиняюсь, понял) Черт, а я пол дня угробил из за этой ошибки) Спасибо) Вот к чему приводит невнимательность)
0
valera_21
364 / 350 / 64
Регистрация: 05.01.2010
Сообщений: 1,453
Завершенные тесты: 5
26.11.2015, 17:58 #6
bjefix, ок, перефразирую первый пункт. вы уверены, что у элемента Book есть дочерние элементы "widacha" и "wozwrat"?
0
bjefix
3 / 3 / 1
Регистрация: 08.02.2015
Сообщений: 54
26.11.2015, 18:23  [ТС] #7
valera_21, Спасибо, уже исправил, не заметил просто)

Добавлено через 12 минут
valera_21, А как мне найти последний элемент в коллекции Books.
Я пробовал вот так
C#
1
2
3
4
5
var Book = from Books in xDoc.Elements("Books").Last()
                       select new
                       {
 
                       };
Но выводит ошибку
0
valera_21
364 / 350 / 64
Регистрация: 05.01.2010
Сообщений: 1,453
Завершенные тесты: 5
26.11.2015, 18:43 #8
Цитата Сообщение от bjefix Посмотреть сообщение
Но выводит ошибку
какую?
0
bjefix
3 / 3 / 1
Регистрация: 08.02.2015
Сообщений: 54
26.11.2015, 19:29  [ТС] #9
Все, исправил)
C#
1
2
3
4
5
6
7
8
9
var Book = from Books in xDoc.Descendants("Book")
                       select new
                       {
                           i = Books.Attribute("id").Value
                       };
            foreach (var bk in Book)
            {
                numericUpDown1.Maximum = Convert.ToDecimal(bk.i);
            }
Только не понимаю почему работает правильно ))
0
26.11.2015, 19:29
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.11.2015, 19:29
Привет! Вот еще темы с ответами:

Загрузка файла на FTP - C#
Доброго времени суток! На фтп имеется папка images, в которую надо загрузить файл fname. fname выбирается пользователем (код под...

Загрузка и запуск файла - C#
Нужно скачать файл с сайта: site.ru/file.exe Скачать его в папку C:\file Запустить: C:\file\file.exe

Загрузка файла на сервер - C#
Доброго времени суток. Необходима любая информация (в идеале кусок кода) который бы реализовал следующее: у меня есть клиентская и...

.NET 4.x Загрузка файла на Rghost.ru - C#
Добрый день товарищи помогите пожалуйста, оно чё т не хочет работать никак вообще уже что только не менял. Вот правильный запрос который...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru