Excelファイルからデータを読み取り、検証後にデータをデータベースにアップロードできる必要があります。
ただし、私が使用しているサーバーは Web アプリケーションの書き込み権限を許可していないため、アップロードによってサーバーに書き込むことなく Excel ファイルから読み取ることができるかどうかを知る必要がありますか?
これまでのところ、明確な答えを見つけることができませんでした。
ありがとう!
アップロード コントロールが と呼ばれているとしましょうfileUpload
。
する必要はありませんfileUpload.SaveAs("path")
。でストリームを読むことができますfileUpload.PostedFile.InputStream
。これをExcelシートを含むzipファイルに使用しました(ちなみにライブラリはIonicです):
using (var file = ZipFile.Read(fileUpload.PostedFile.InputStream))
{
foreach (var zipEntry in file.Where(ze => ze.FileName.EndsWith(".xls")
|| ze.FileName.EndsWith(".xlsx")))
{
// process the Excel files here.
}
}
申し訳ありませんが、私は VB.net にあまり詳しくないので、以下は間違っている可能性があります。しかし、VB.net のバージョンを要求したため:
Using file As var = ZipFile.Read(fileUpload.PostedFile.InputStream)
For Each zipEntry As var In file.Where(ze => ze.FileName.EndsWith(".xls") or ze.FileName.EndsWith(".xlsx"))
' process the Excel files here.
Next
End Using