Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 04.05.2014
Сообщений: 11
1

Сохранить список в xml

15.05.2014, 11:11. Просмотров 1926. Ответов 5
Метки нет (Все метки)

Покажите пожалуйста простейший пример, сохранения списка объектов нестандартного типа в xml и загрузки её же из xml
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.05.2014, 11:11
Ответы с готовыми решениями:

Получаю xml по url, как сохранить содержимое в новый xml файл, только чтобы структура не нарушилась?
Когда делаю так, структура нарушается WebRequest request =...

Как сохранить список классов в XML-файл
Доброго времени суток. Есть специальный класс типа: Public Class Class1 Private _Var1 As...

[XML] - Как правильно сохранить XML с уровнями и отступами?
Приветы всем. Подскажите как правильно сохранить файл .xml чтобы сохранились отступы в уровнях и...

Как сохранить содержимое xml файла (без парсинга) в MySql и как потом xml от туда извлечь
делаю так: $xml_string=file_get_contents($uploadfile); //путь к файлу xlm ...

5
984 / 882 / 353
Регистрация: 24.03.2014
Сообщений: 2,381
Записей в блоге: 2
15.05.2014, 11:19 2
Тип
C#
1
2
3
4
        public class SomeType
        {
            public int Value { get; set; }
        }
Сериализация
C#
1
new System.Xml.Serialization.XmlSerializer(typeof(SomeType)).Serialize(System.Xml.XmlWriter.Create("xml.xml"), new SomeType { Value = 123 });
Результат
XML
1
2
3
4
<?xml version="1.0" encoding="utf-8"?>
<SomeType xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Value>123</Value>
</SomeType>
Десериализация
C#
1
SomeType type = new System.Xml.Serialization.XmlSerializer(typeof(SomeType)).Deserialize(System.Xml.XmlReader.Create("xml.xml")) as SomeType;
1
0 / 0 / 0
Регистрация: 04.05.2014
Сообщений: 11
15.05.2014, 11:23  [ТС] 3
Тут записывается класс и значение устанавливается в момент записи, а мне нужно записать уже готовый список
0
984 / 882 / 353
Регистрация: 24.03.2014
Сообщений: 2,381
Записей в блоге: 2
15.05.2014, 11:29 4
Найдите 10 отличий с прошлым примером...
C#
1
2
3
4
5
6
7
8
9
            List<SomeType> list = new List<SomeType>()
            {
                new SomeType { Value = 1 },
                new SomeType { Value = 2 },
                new SomeType { Value = 3 },
                new SomeType { Value = 4 },
            };
 
            new System.Xml.Serialization.XmlSerializer(typeof(List<SomeType>), new[] { typeof(SomeType) }).Serialize(System.Xml.XmlWriter.Create("xml.xml"), list);
Результат:
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?xml version="1.0" encoding="utf-8"?>
<ArrayOfSomeType xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <SomeType>
        <Value>1</Value>
    </SomeType>
    <SomeType>
        <Value>2</Value>
    </SomeType>
    <SomeType>
        <Value>3</Value>
    </SomeType>
    <SomeType>
        <Value>4</Value>
    </SomeType>
</ArrayOfSomeType>
1
0 / 0 / 0
Регистрация: 04.05.2014
Сообщений: 11
15.05.2014, 17:59  [ТС] 5
Пытаюсь сделать так как вы пишите и получаю ошибку "Невозможно ZonePoint, т.*к. он не имеет беспараметрического конструктора." А класс этот из внешней библиотеки и добавить к нему этот самый бесапараметрический конструктор я не могу

Добавлено через 1 час 28 минут
Подскажите плз кто-нибудь как всё же сереализировать классы у которых нет беспараметрического конструктора.
0
984 / 882 / 353
Регистрация: 24.03.2014
Сообщений: 2,381
Записей в блоге: 2
16.05.2014, 09:40 6
Если возможно наследовать этот класс, то можно делать свой класс-наследник с беспараметрическим конструктором,
Также можно реализовать IXmlSerializable на классе-коллекции, например, и вручную написать сериализацию.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.05.2014, 09:40

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

из *.xml сохранить в *.mdb
Создана и сохранена таблица посредством C#. как теперь мне сохранить её в аксесовскую? ничего не...

Как сохранить xml?
Не удается изменить файл .xml программными средствами. Создаю приложение магазина windows для...

Сохранить данные из БД в XML-файл
Есть большое количество данных(из базы данных), которые составляются в таблицу. Как создать из них...

Как сохранить данные в XML?
Загружаю данные из XML в DataGrid. Некие действия с данными после чего мне нужно новые данные...


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

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

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