Разбор файла построчно, чтобы получить необходимую информацию.Используйте System.IO.FileStream
или StreamReader
для загрузки данных, а затем вы можете обрабатывать их по мере необходимости.Сохраните его в базе данных.
Вот краткий пример использования StreamReader
из здесь .
using (StreamReader sr = new StreamReader(path))
{
while (sr.Peek() >= 0)
{
string lineFromFile = sr.ReadLine();
//now parse the string lineFromFile and get the information you need
}
}
Я мог бы добавить, что это может быть полезно для создания объектовдля представления различных частей данных, которые вам нужно хранить.Затем этот объект может упростить обработку данных, сохранение их в базе данных и т. Д.
Анализ строки (предполагается, что файлы имеют одинаковый точный формат, то есть одинаковые строки информации).
Следите за тем, на какой линии вы находитесь.
string[] myFile = File.ReadAllLines(@"C:\file.txt");
var lineCount = myFile.Length;
for(i=0; i<lineCount; i++)
{
switch(i)
{
case 0:
//parse line 0
break;
case 1:
//parse line 1
break;
case 2:
//parse line 2
break;
//and so on until you get to the line that begins the regular "records" part of the file
}
if(i >= 10) //assumes line 10 is where the regular "records" start
{
//parse the record like so
string[] columns = myFile[i].Split('\t'); //this assumes your columns are separated by a tab. If it's a space you would use myFile[i].Split(' '), etc.
//now you have an array with all your columns
foreach(string column in columns)
{
//now do what you want with the information
}
}
}
}