Что такое WPF?
Windows Presentation Foundation — один из компонентов ядра .NET Framework, который позволяет разработчикам создавать богатые, различные Windows приложения.
Как осуществить импорт данных из файла в приложение?
Для того, чтобы импортировать данные из файла в приложении WPF, для начала нужно создать функцию, которая будет отвечать за данный функционал:
// Импорт данных void Import() { }
Далее нужно добавить библиотеку using System.IO; которая позволяет взаимодействовать с файлами, записывать и читать данные из них. После этого, ещё одну библиотеку, которая позволяет вызывать проводник и выбирать файл самостоятельно using Microsoft.Win32;
Теперь переходим к коду:
OpenFileDialog ofd = new OpenFileDialog(); ofd.ShowDialog();
Данными строчками открывается проводник и просит выбрать файл для импорта.
Теперь нужно проверить выбран ли какой-либо файл, сделать это можно следующим образом:
if (ofd.FileName != "") // проверка на выбор файла { } else MessageBox.Show("Файл не выбран");
После того как закрывается окно без выбранного, программа уведомляет об этом.
Далее следует прописать основную логику данной функции. Если файл был выбран, нужно открыть его и начать читать. Для этого прописывается следующий код:
StreamReader sr = new StreamReader(ofd.FileName); // открываем файл while(!sr.EndOfStream) // перебираем строки, пока они не закончены { }
Поскольку в импортируемом файле, все данные укладываются в три столбца. То запускается цикл for который будет три раза читать строку, и формировать данные в массив:
string[] lines = new string[3];// массив данных
for(int i = 0; i< 3; i++) // читаем три строки
{
string line = sr.ReadLine(); // читаем строку
string[] data = line.Split(':');
line = ""; // обнуляем переменную
if(data.Length >= 2) // проверяем на целостность данных
{
for (int j = 1; j<data.Length; j++) // складываем данные
{
line += data[j]; // ссобираем строку
}
}
lines[i] = line; // записываем значения в массив
} // данные хроняться в массиве data // выводим данные
MessageBox.Show("Данные в файле:\nЛогин: " + lines[0] + "\nПароль: " + lines[1] + "\n Фото: " + lines[2]);
Вся функция импорта выглядит следующим образом:
// Импорт данных
void Import() {
OpenFileDialog ofd = new OpenFileDialog(); // создаём процесс
ofd.ShowDialog(); // открываем проводник
if (ofd.FileName != "") // проверка на выбор файла
{
StreamReader sr = new StreamReader(ofd.FileName); // открываем файл
while (!sr.EndOfStream) // перебираем строки, пока они не закончены
{
string[] lines = new string[3]; // массив данных
for (int i = 0; i < 3; i++) // читаем три строки
{
string line = sr.ReadLine(); // читаем строку
string[] data = line.Split(':');
line = ""; // обнуляем переменную
if (data.Length >= 2) // проверяем на целостность данных
{
for (int j = 1; j < data.Length; j++) // складываем данные
{
line += data[j];
}
}
lines[i] = line; // записываем значения
} // данные хроняться в массиве data // выводим данные
MessageBox.Show("Данные в файле:\nЛогин: " + lines[0] + "\nПароль: " + lines[1] + "\n Фото: " + lines[2]);
}
}
else MessageBox.Show("Файл не выбран");
}
Теперь запускаем программу и выбираем файл который был создан в процессе «Экспорт» (ссылка на экспорт). Программа выводит данные, которые находятся в файле.
Таким способом можно реализовать импорт данных из файла в приложение.
Автор статьи: Александр Каримов.