Filehelpers для чтения данных из внешнего источника
Я пытаюсь прочитать CSV-файл из внешнего источника с помощью filehelpers.
Вот мой код:
var engine = new FileHelperAsyncEngine<FileController>();
using (engine.BeginReadFile("https://dl.dropboxusercontent.com/s/xxxyyyzzz/data.csv"))
{
foreach(FileController csvData in engine)
{
Console.WriteLine(csvData.batteryLevel);
}
}
engine.BeginReadFile не работает с http-ссылками. Как я могу прочитать этот файл с помощью Filehelpers?
1 ответ
Решение
Я не думаю, что FileHelpers работает над http. Но вы можете скачать его сначала:
var engine = new FileHelperAsyncEngine<FileController>();
string fileName = DownloadFile("https://dl.dropboxusercontent.com/s/xxxyyyzzz/data.csv");
using (engine.BeginReadFile(fileName))
{
foreach(FileController csvData in engine)
{
Console.WriteLine(csvData.batteryLevel);
}
}
File.Delete(fileName);
public static string DownloadFile(Uri url)
{
string fileName = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString("n") + ".csv");
WebClient aWebClient = new WebClient();
aWebClient.DownloadFile(url, fileName);
return fileName;
}