36

重複の可能性:
Excel から UTF8 エンコードの CSV へ

シナリオ: 大量のグローバル顧客データを含む Excel ファイルがあります。ファイルの作成時に使用されたエンコーディングがわかりません。

質問: 別のソフトウェアに正しくインポートできるように、Excel ファイルで使用されている文字エンコードを特定するにはどうすればよいですか?

4

1 に答える 1

9

Excel 2010 の場合は、UTF-8 にする必要があります。MS による指示:
http://msdn.microsoft.com/en-us/library/bb507946 :

「SpreadsheetML ドキュメントの基本的なドキュメント構造は、Workbook 内のワークシートを参照する Sheets 要素と Sheet 要素で構成されます。Worksheet ごとに個別の XML ファイルが作成されます。たとえば、MySheet1 と MySheet1 という 2 つのワークシートを持つワークブックの SpreadsheetML 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>

ワークシート XML ファイルには、SheetData などのブロック レベルの要素が 1 つ以上含まれています。sheetData はセル テーブルを表し、1 つ以上の Row 要素を含みます。行には、1 つ以上の Cell 要素が含まれます。各セルには、セルの値を表す CellValue 要素が含まれています。たとえば、セル A1 に値 100 しかないブックの最初のワークシートの SpreadsheetML は、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>

"

セルエンコーディングの検出:

https://metacpan.org/pod/Spreadsheet::ParseExcel::Cell

http://forums.asp.net/t/1608228.aspx/1

于 2012-11-05T19:49:21.737 に答える