Здесь используются .net core и C#.
У меня есть пользовательский интерфейс, из которого пользователь может загружать файлы Excel или CSV. Как только они загружают, это поступает в мой веб-API, который обрабатывает чтение данных из этих файлов и возвращает json.
Мой код API как:
[HttpPost("upload")]
public async Task FileUpload(IFormFile file)
{
JArray data = new JArray();
using (ExcelPackage package = new ExcelPackage(file.OpenReadStream()))
{
ExcelWorksheet worksheet = package.Workbook.Worksheets[1];
//Process, read from excel here and populate jarray
}
return Ok(data );
}
В приведенном выше коде я использую EPPlus для чтения файла Excel. Для файла Excel все работает нормально, но он не может прочитать файл CSV, что является ограничением EPPlus.
Я искал и нашел другую библиотеку CSVHelper: https://joshclose.github .io/CsvHelper/ Проблема в том, что он работает наоборот и может читать из CSV, но не из Excel.
Существует ли какая-либо библиотека, которая поддерживает чтение из обоих.
Или можно было бы использовать только EPPlus, но конвертировать загруженный CSV в Excel на лету, а затем читать. (обратите внимание, что я нигде не храню файл Excel, поэтому не могу использовать команду «Сохранить как», чтобы сохранить его как Excel)
Пожалуйста, есть какие-нибудь данные?
--Обновлено - Добавлен код для чтения данных из Excel---
int rowCount = worksheet.Dimension.End.Row;
int colCount = worksheet.Dimension.End.Column;
for (int row = 1; row
Подробнее здесь: https://stackoverflow.com/questions/532 ... xcel-files