Добрый день дорогие друзья!
Есть задачка не большой сложности, хотелось бы реализовать красиво)
Хочу узнать, сталкивался ли кто нибудь с подобным и какие решения принимали!
Задача:
Есть таблица Excel с данными (код платежа, имя, организация и т.д.), так же есть html файл в котором тоже таблица (код платежа, номер UIN)
требуется Запустить программу,
Кнопка1: выбрать таблицу excel,
Кнопка2: Выбрать файл html,
Кнопочки говорят сами за себя, хотелось бы вообще БЕЗ вывода в datagridview и т.д., всякое может быть с данными(захочется потыкать там и внести исправления) делаю, для обработки данных нашей сотруднице, по просьбе конечно))
в результате программа должна сравнивать каждую строку столбца "КОД ПЛАТЕЖА" из excel с "КОД ПЛАТЕЖА" из html, в случае совпадения, из столбца "Номер UIN" из html, добавляется запись в столбец который создастся в EXCEL "Номер UIN" и так по все таблице
мои сложности: не знаю как считать данные, сравнить и записать, а так же сохранить результат в EXCEL таблице
namespace EXCEL
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
DataSet result;
private void button1_Click(object sender, EventArgs e)
{
using (OpenFileDialog ofd = new OpenFileDialog() { Filter = "Excel Workbook|*.xls", ValidateNames = true })
{
if (ofd.ShowDialog() == DialogResult.OK)
{
FileStream fs = File.Open(ofd.FileName, FileMode.Open, FileAccess.Read);
IExcelDataReader reader = ExcelReaderFactory.CreateBinaryReader(fs);
reader.IsFirstRowAsColumnNames = true;
result = reader.AsDataSet();
comboBox1.Items.Clear();
foreach (DataTable dt in result.Tables)
comboBox1.Items.Add(dt.TableName);
reader.Close();
}
}
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
dataGridView1.DataSource = result.Tables[comboBox1.SelectedIndex];
}
}
}
Для этой цели могут подойти 2 либы:
EPPlus
- библиотека для работы с Excel
без использования interop, что повышает производительностьAngleSharp
- библиотека для парсинга html
.Грузите с помощью этих библиотек все в память и выполняете сравнение. Библиотеки достаточно популярны и интуитивно понятные.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Задумал написать игру (простой PacMan)Сделал Grid сетку 30x30 присвоил нажатию клавиш (стрелочек) методы для перемещения картинки Pacman по гриду: как...