我使用devexpress gridview导出将excel导出到一个文件夹,我能够导出excel文件,但是我不知道如何将excel文件导出到一个特定的文件夹。有人可以指导我吗?
例如,这是导出我的gridview xlsx的代码,并且工作正常
exportFeedbackGrid.WriteXlsToResponse()
我想将我的xlsx文件导出到e:\ filelocation,如何实现呢?
<dx:ASPxGridViewExporter GridViewID="FeedbackGrid" ID="exportFeedbackGrid" OnLoad="ExportTo" runat ="server"></dx:ASPxGridViewExporter>
Public Sub ExportTo(sender As Object, e As EventArgs)
Dim stream As Stream = New FileStream("e:\filelocation", FileMode.Create)
exportFeedbackGrid.WriteXlsToResponse()
End Sub
答案 0 :(得分:1)
假设exportFeedbackGrid
是ASPxGridViewExporter
控件,则可以在执行System.IO
方法之前使用WriteXlsToResponse()
命名空间提供的标准I / O方法来处理网格导出程序控件的输出,如下例所示:
Public Sub ExportTo(sender As Object, e As EventArgs)
' write to specified folder
Using ms As New MemoryStream()
exportFeedbackGrid.WriteXls(ms)
ms.Seek(0, SeekOrigin.Begin)
Using stream As New FileStream(Server.MapPath("~/path/to/file/location/example.xls"), FileMode.Create, FileAccess.Write)
ms.WriteTo(stream)
End Using
End Using
' write as response
exportFeedbackGrid.WriteXlsToResponse()
End Sub
注释:
指定服务器的文件夹路径必须已启用写访问权限(即创建文件的权限)。
如果在分配直接文件路径时遇到问题,请考虑使用IIS虚拟目录(也已启用对物理路径的写入权限)。
参考: