0
我想將C#中的數值數據導出到Excel,其中浮點數使用逗號(',')作爲小數而不是點('。')。我通過在C#中編寫XML代碼導出Excel文件。從C#導出到使用逗號作爲小數點的數字的Excel?
從代碼端正確導出數據,但如果數據類型爲「數字」,則Excel文件省略(',')。當我爲英語生成相同的數據時,它會完美生成。
示例:號碼= 65,4然後在Excel文件它顯示654
示例代碼: --xml代碼
<?xml version="1.0" encoding="UTF-8" ?>
<?mso-application progid="Excel.Sheet"?>
<ss:Workbook xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns:html="http://www.w3.org/tr/rec-html40">
<ss:Worksheet ss:Name="test">
<ss:Table>
<ss:Row>
<ss:Cell ss:StyleID="s65"><ss:Data ss:Type="String">123</ss:Data></ss:Cell>
<ss:Cell ss:StyleID="s65"><ss:Data ss:Type="Number">64,3</ss:Data></ss:Cell>
<ss:Cell ss:StyleID="s65"><ss:Data ss:Type="Number">72,0</ss:Data></ss:Cell>
<ss:Cell ss:StyleID="s65"><ss:Data ss:Type="Number">26,0</ss:Data></ss:Cell>
<ss:Cell ss:StyleID="s65"><ss:Data ss:Type="Number">72,0</ss:Data></ss:Cell></ss:Row>
</ss:Table>
</ss:Worksheet></ss:Workbook>
C#代碼 -
Dim excelXml As String = GetExcelXml(dsInput, filename)
Response.Clear()
Response.AppendHeader("Cache-Control", "cache, must-revalidate")
Response.AppendHeader("Pragma", "public")
Response.AppendHeader("Content-Type", "application/vnd.ms-excel")
' Response.ContentEncoding = System.Text.Encoding.GetEncoding(1252)
Response.Charset = "iso-8859-1"
Response.Cache.SetCacheability(HttpCacheability.NoCache)
Response.AppendHeader("Content-disposition", "attachment; filename=" &
System.IO.Path.GetFileName(filename))
Response.Write(excelXml)
Response.Flush()
Response.[End]()
感謝您的答覆... 它工作正常。我用你的建議代碼得到了解決方案。 – Finisher001 2012-04-19 05:26:25