Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
WersaT
1 / 1 / 0
Регистрация: 23.10.2010
Сообщений: 108
1

Сохранение таблицы в файл

21.03.2016, 22:30. Просмотров 1194. Ответов 4
Метки нет (Все метки)

Здравствуйте. Я опять со своими вопросами.
Нужно при запуске проги загружать таблицу в datagrid wiew, а при нажатии кнопки сохранить таблица сохранялась в директорию "D:\test". Формат файла значения не имеет.
В инете нашел кучу разной инфы. Пробовал через dataset, через open/savefiledialog, через excel, но либо выдает кучу ошибок, либо просто ни чего не происходит.
Объясните неучу как решить эту задачу))))
Заранее спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.03.2016, 22:30
Ответы с готовыми решениями:

Сохранение таблицы DataGridView в файл формата .txt
помогите пожалуйста:( Добавлено через 4 минуты и еще возник вопрос как...

Сохранение таблицы DataDridView в Excel
Подскажите пожалуйста, как можно сохранить данную таблицу(прилагаю скрин...

Сохранение в файл
Добрый день . Подскажите как сделать так чтобы программа записывала в файл...

Сохранение таблицы Excel из кода
Использую данныйкод для сохранения таблицы в файле Excel try ...

Сохранение 2х массивов в 1 файл
Доброе время суток! Мне необходимо сохранить 2 разных массива в 1 файл,...

4
EvilFromHell
944 / 843 / 345
Регистрация: 26.04.2012
Сообщений: 2,648
22.03.2016, 04:46 2
WersaT, наипростейший способ-через DataSet. В нем храните все таблицы, и присваиваете их свойству DataSource соответствующих DataGridView. Когда надо сохранить/загрузить, то достаточно методов Read/WriteXml.

Добавлено через 58 секунд
Цитата Сообщение от WersaT Посмотреть сообщение
Пробовал через dataset, через open/savefiledialog, через excel, но либо выдает кучу ошибок, либо просто ни чего не происходит.
Покажите тогда код.
0
orlov87
78 / 78 / 51
Регистрация: 25.02.2016
Сообщений: 243
22.03.2016, 12:14 3
Вот вам очень простой рабочий пример:
C#
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
28
29
30
using System;
using System.Collections.Generic;
using System.IO;
using System.Windows.Forms;
using System.Xml.Serialization;
 
namespace WindowsFormsApplication5
{
    public partial class Form1 : Form
    {
        public List<Class1> C;
        private const string Fn = @"D:\test\1.xml";
 
        public Form1()
        {
            InitializeComponent();
            var xml = new XmlSerializer(typeof(List<Class1>));
            using (var fs = new FileStream(Fn, FileMode.Open))
                C = xml.Deserialize(fs) as List<Class1>;
            dataGridView1.DataSource = C;
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            var xml = new XmlSerializer(typeof (List<Class1>));
            using (var fs = new FileStream(Fn, FileMode.Create))
                xml.Serialize(fs, C);
        }
    }
}
C#
1
2
3
4
5
6
7
8
namespace WindowsFormsApplication5
{
    public class Class1
    {
        public string A { get; set; }
        public double B { get; set; }
    }
}
0
WersaT
1 / 1 / 0
Регистрация: 23.10.2010
Сообщений: 108
22.03.2016, 23:18  [ТС] 4
orlov87, пытался разобраться с кодом, но появилась куча вопросов. Можно ли в Class1 запихнуть datagridview или нужно программно описывать таблицу?
C#
1
2
3
4
5
public class Class1
{
   public string A { get; set; }
   public double B { get; set; }
}
Если сохранить таблицу через
C#
1
2
3
4
5
private void button2_Click(object sender, EventArgs e)
        {
            var xml = new XmlSerializer(typeof (List<Class1>));
            using (var fs = new FileStream(Fn, FileMode.Create))
                xml.Serialize(fs, C);
то создается xml файл без данных которые я внес в таблицу. Вот все содержимое xml файла.
XML
1
2
<?xml version="1.0"?>
<ArrayOfClass1 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xsi:nil="true" />
Если я открываю xml файл созданный программно, то ошибок нет. Но если xml файл созданный в Excel, то появляется ошибка FileNotFoundException was unhandled. Содержимое Екселевского файла так же пробовал подогнать под программу (шапку xml кода). Вроде пока все
0
WersaT
1 / 1 / 0
Регистрация: 23.10.2010
Сообщений: 108
24.03.2016, 22:27  [ТС] 5
Мне необходимо при открытии ока загрузить таблицу в datagridview из заранее подготовленного файла. Количество столбцов - константа. Количество строк может меняться.
При нажатии кнопки сохранить, таблица сохраняется в D:\test\1.xml Вообще мне все равно в какой формат сохранять, но все советуют работать с xml
Здесь мне подсказали код, но я не могу в нем разобраться.

C#
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
28
29
30
using System;
using System.Collections.Generic;
using System.IO;
using System.Windows.Forms;
using System.Xml.Serialization;
 
namespace WindowsFormsApplication5
{
    public partial class Form1 : Form
    {
        public List<Class1> C;
        private const string Fn = @"D:\test\1.xml";
 
        public Form1()
        {
            InitializeComponent();
            var xml = new XmlSerializer(typeof(List<Class1>));
            using (var fs = new FileStream(Fn, FileMode.Open))
                C = xml.Deserialize(fs) as List<Class1>;
            dataGridView1.DataSource = C;
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            var xml = new XmlSerializer(typeof (List<Class1>));
            using (var fs = new FileStream(Fn, FileMode.Create))
                xml.Serialize(fs, C);
        }
    }
}
и непосредственно сам класс
C#
1
2
3
4
5
6
7
namespace WindowsFormsApplication5
{
    public class Class1
    {
        public string A { get; set; }
        public double B { get; set; }
    }
Можно ли в Class1 запихнуть datagridview или нужно программно описывать таблицу?
При открытии - таблица создается по описанному классу, а не грузится из файла.
При сохранении таблицы создается xml файл без данных которые я внес в таблицу. Вот все содержимое xml файла.

XML
1
2
<?xml version="1.0"?>
<ArrayOfClass1 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xsi:nil="true" />
0
24.03.2016, 22:27
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.03.2016, 22:27

Сохранение структуры в файл
Дана структура: public struct Uchastnik { public...

Сохранение информации в файл
Я занимаюсь разработкой игры под андроид на unity и скрипты пишу на C#. С C# я...

Сохранение DataGrid в файл
Доброго время суток бойцы....Подскажи мне такой вопросик.... пишу сохранения...


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

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

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