是否有可能从Excel文件中读取数据,而无需将其上传到VB.Net中的服务器?
我需要能够从excel文件中读取数据,并在validation数据后将数据上传到数据库。
但是,我正在使用的服务器不允许Web应用程序的写入权限,所以我需要知道是否可以从Excel文件中读取,而无需通过上载将其写入服务器?
到目前为止,我还没有find明确的答案。
谢谢!
假设你的上传控件叫做fileUpload
。
你不需要做一个fileUpload.SaveAs("path")
。 你可以用fileUpload.PostedFile.InputStream
读取stream。 我用这个与Excel表单中的一个zip文件(图书馆是离子顺便说一句):
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