用内存stream从URL中读取Excel
我正在上传一个Excel文件到Azure,我正在关注这个 URL。 现在我必须阅读这个excel文件的URL(我不想下载它)。 我正在这样做
var webRequest = HttpWebRequest.Create("url_of_excel_in_Azure") as HttpWebRequest; var webResponse = webRequest.GetResponse(); using (var webResponseStream = webResponse.GetResponseStream()) using (var memoryStream = new MemoryStream()) { webResponseStream.CopyTo(memoryStream); using (var excelPackage = new ExcelPackage(memoryStream)) { var value = excelPackage.Workbook.Worksheets.First().Cells[1, 1].Value; } }
我有一个特定的格式为Excel,即它将只有4列,但多行,从上面的代码,我可以访问第一行的第一列值,我如何应用循环这些单元格读取4列中的所有行。 如果我写
excelPackage.Workbook.Worksheets.First().Cells.Count()
这是给我的所有列,包括哪些是空白的计数。
我可以跳过这个上传function,因为我只需要从张贴的文件创buildDataTable,如果有人可以build议如何从张贴的文件创builddatatable,而不需要上传它,这也会很好。 这是我的Excel的格式
将回stream与memoryStream.Position = 0;
您可以使用下面的代码来读取所有行的内容并将其扔到数据表中。
Excel.Worksheet worksheet = excelPackage.Workbook.Worksheets.get_Item(1); int iRowCount = worksheet.UsedRange.Rows.Count; int iColCount = worksheet.UsedRange.Columns.Count; Excel.Range range; for (int iRow = 2; iRow <= iRowCount; iRow++) { for (int iCol = 1; iCol <= iColCount; iCol++) range = (Excel.Range)worksheet.Cells[iRow, iCol]; string content = range.Text.ToString(); }
- 在Excel中将Excel文件导入到SQL Azure
- 如何在Azure上运行excel?
- Excel到具有查询参数的Azure SQL
- C#Azure文件存储CloudFile.OpenWrite与OpenXml.SpreadsheetDocument问题…需要FileMode和FileAccess选项?
- 从Excel中读取存储在Azure Blob存储中的.csv
- 在Azure上使用Excel
- 从networking上的Excel文件中获取数据
- 将数据从Azure SQL数据库通过参数化的存储过程导入到Excel中
- 仅在Azure上出现错误 – “Microsoft.ACE.OleDb.12.0”提供程序未在本地计算机上注册