sam*_*pin 25 excel character-encoding
可能重复:
使用UTF8编码的Excel到CSV
场景:我有一个包含大量全局客户数据的excel文件.我不知道创建文件时使用了什么编码.
问题:如何确定excel文件中使用的字符编码,以便将其正确导入到另一个软件中?
对于Excel 2010,它应该是UTF-8.MS指导:
http://msdn.microsoft.com/en-us/library/bb507946:
"SpreadsheetML文档的基本文档结构由Sheets和Sheet元素组成,它们引用了工作簿中的工作表.为每个工作表创建了一个单独的XML文件.例如,包含两个工作表的工作簿的SpreadsheetML名称为MySheet1和MySheet2位于Workbook.xml文件中,如以下代码示例所示.
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<workbook xmlns=http://schemas.openxmlformats.org/spreadsheetml/2006/main xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships">
<sheets>
<sheet name="MySheet1" sheetId="1" r:id="rId1" />
<sheet name="MySheet2" sheetId="2" r:id="rId2" />
</sheets>
</workbook>
Run Code Online (Sandbox Code Playgroud)
工作表XML文件包含一个或多个块级元素,如SheetData.sheetData表示单元格表,包含一个或多个Row元素.一行包含一个或多个Cell元素.每个单元格都包含一个CellValue元素,表示单元格的值.例如,工作簿中第一个工作表的SpreadsheetML(单元格A1中只有值100)位于Sheet1.xml文件中,如下面的代码示例所示.
<?xml version="1.0" encoding="UTF-8" ?>
<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main">
<sheetData>
<row r="1">
<c r="A1">
<v>100</v>
</c>
</row>
</sheetData>
</worksheet>
Run Code Online (Sandbox Code Playgroud)
"
检测细胞编码:
https://metacpan.org/pod/Spreadsheet::ParseExcel::Cell
http://forums.asp.net/t/1608228.aspx/1