to shoutor(土人制造):老大.那篇文章 是不是就把数据导出到服务器上的一个excel文件里了,我想把它导出到客户端的一个excel文件里,或者就在客户端的内存里打开也行.(就像VB6操作excel一样). 我用的的asp.net..
Dim cnn As New OleDbConnection("Provider=MSDAORA.1;User ID=szjt;Data Source=szjt;Password=szjt") Dim com As New OleDbCommand("select datatitle,DATASPE,datatypetitle from alldata", cnn) Dim dr As OleDbDataReader Dim strFilePath As String strFilePath = Request.MapPath(".") strFilePath += "\cache\test.csv" If IO.File.Exists(strFilePath) Then Try IO.File.Delete(strFilePath) Catch ex As Exception End Try End If Dim excelFile As New IO.StreamWriter(strFilePath, False, System.Text.Encoding.Default) Dim sHttpFileName As String Dim iRow, iCol As Integer iRow = 1 Try cnn.Open() dr = com.ExecuteReader Dim strTitle As String 'For iCol = 1 To dr.FieldCount ' strTitle = strTitle & funGetFieldName(dr.GetName(iCol - 1), strTableName) & "," ' 'myWorkSheet.Cells(iRow, iCol) = dr.GetName(iCol - 1) 'Next 'excelFile.WriteLine(strTitle) iRow += 1 Dim strText As String Do While dr.Read For iCol = 1 To dr.FieldCount strText = strText & dr.Item(iCol - 1) & "," Next excelFile.WriteLine(strText) strText = "" iRow += 1 Loop Try excelFile.Flush() excelFile.Close() Finally End Try Response.ClearHeaders() Response.ClearContent() Response.ContentType = "text/csv" Response.AddHeader("Content-Disposition:", "attachment; filename=" & HttpUtility.UrlEncode(strFilePath)) Try Response.WriteFile(strFilePath) Response.Flush() Response.Close() Response.End() Catch ex As Exception 'Response.Write(ex.ToString) End Try Catch ex As Exception Response.Write(ex.ToString) Finally dr.Close() 'dr.Dispose() com.Dispose() cnn.Close() cnn.Dispose() End Try
int i=0;
foreach(DataGridColumn col in this.datagrid1.Columns)
{
xlSheet.ActiveSheet.Cells[1,i+1]=col.HeaderText.ToString();
i=i+1;
}
int j=0;
for(i=0;i<this.datagrid1.Items.Count;i++)
{
for(j=0;j<this.datagrid1.Columns.Count;j++)
{
xlSheet.ActiveSheet.Cells[i+2,j+1]=this.datagrid1.Items[i].Cells[j].Text.ToString();
}
} xlSheet.ActiveSheet.Export(Server.MapPath(".")+"\\"+this.xlfile.Text,OWC.SheetExportActionEnum.ssExportActionNone);
怎么把XML文件再导成EXCEL呀..能不能说得详细一点..不好意思..我刚学.NET,有些地方理解不是很好..先行谢过老大了...
我用的的asp.net..
Dim com As New OleDbCommand("select datatitle,DATASPE,datatypetitle from alldata", cnn)
Dim dr As OleDbDataReader
Dim strFilePath As String
strFilePath = Request.MapPath(".")
strFilePath += "\cache\test.csv"
If IO.File.Exists(strFilePath) Then
Try
IO.File.Delete(strFilePath)
Catch ex As Exception End Try
End If Dim excelFile As New IO.StreamWriter(strFilePath, False, System.Text.Encoding.Default)
Dim sHttpFileName As String
Dim iRow, iCol As Integer
iRow = 1
Try
cnn.Open()
dr = com.ExecuteReader Dim strTitle As String
'For iCol = 1 To dr.FieldCount
' strTitle = strTitle & funGetFieldName(dr.GetName(iCol - 1), strTableName) & ","
' 'myWorkSheet.Cells(iRow, iCol) = dr.GetName(iCol - 1)
'Next
'excelFile.WriteLine(strTitle)
iRow += 1
Dim strText As String Do While dr.Read
For iCol = 1 To dr.FieldCount
strText = strText & dr.Item(iCol - 1) & ","
Next
excelFile.WriteLine(strText)
strText = ""
iRow += 1
Loop Try
excelFile.Flush()
excelFile.Close()
Finally
End Try Response.ClearHeaders()
Response.ClearContent()
Response.ContentType = "text/csv"
Response.AddHeader("Content-Disposition:", "attachment; filename=" & HttpUtility.UrlEncode(strFilePath))
Try
Response.WriteFile(strFilePath)
Response.Flush()
Response.Close()
Response.End()
Catch ex As Exception
'Response.Write(ex.ToString)
End Try Catch ex As Exception
Response.Write(ex.ToString)
Finally
dr.Close()
'dr.Dispose()
com.Dispose()
cnn.Close()
cnn.Dispose()
End Try