Чтение xls/xlsx и отображение на экране
Я использую "ExcelDataReader" для чтения в файле Excel, я хочу отобразить файл на экране.
protected void Page_Load(object sender, EventArgs e)
{
string filePath = @"C:\WORK\BoireannSVN\trunk\VS\CRCConnect\Spreadsheet\Spreadsheet.xlsx";
FileStream stream = File.Open(filePath, FileMode.Open, FileAccess.Read);
IExcelDataReader excelReader = ExcelReaderFactory.CreateBinaryReader(stream);
excelReader.IsFirstRowAsColumnNames = true;
DataSet result = excelReader.AsDataSet();
while (excelReader.Read())
{
Label x = new Label();
x.Text = result.Tables[0].Rows[0].ItemArray[0].ToString();
uploadExcel.Controls.Add(x);
excelReader.GetInt32(0);
}
excelReader.Close();
}
Я добавил в
Label x = new Label();
x.Text = result.Tables[0].Rows[0].ItemArray[0].ToString();
Попытка получить лист Excel для отображения на экране, хотя мне не повезло с этим. Я думаю это что-то вроде
table1.Columns.Add;
table1.Rows.Add;
но, похоже, не получается, любая помощь очень ценится.
1 ответ
Я был в похожей ситуации, я сделал следующее:
var rows = results.Tables[0].AsEnumerable();
Затем вы можете выполнить итерацию и выбрать значение для столбцов:
foreach (var dataRow in rows)
{
Console.WriteLine(dataRow[0]);
//or
Console.WriteLine(dataRow["ColumnName"]);
}