[]
SpreadJSでは、Excelファイルをインポートする際、日付形式をカルチャ設定に基づいてカスタマイズすることが可能です。
例えば、英語版または表示言語が英語に設定されているExcelファイルに日付データが含まれる場合、既定の表示形式はmm/dd/yyyyですが、SpreadJSで日本語リソースを参照、あるいはCultureManagerで日本語カルチャを設定している場合、このExcelファイルをインポートするとyyyy/mm/dd形式で表示されます。
SpreadJSが参照しているリソースまたは設定しているカルチャではなく、Excelファイルの言語環境と同様の書式で表示する場合は、カスタムのカルチャ情報を作成し、LocalNumberFormatを設定します。
次の手順に従ってカスタム日付書式を設定することができます。
NumberingFormatクラスからカスタマイズする書式のIDを確認します。例えば、年月日の日付書式のIDは14です。
新しいカルチャ情報を作成し、LocalNumberFormatにカスタム形式を設定します。
カルチャ情報をCultureManagerに設定します。
Excelファイルをインポートします。
次の例は、フランスカルチャに設定した場合、日付がyyyy/m/d形式で表示される方法を示しています。
// Spreadを初期化します。
var spread = new GC.Spread.Sheets.Workbook(document.getElementById('ss'), { sheetCount: 1 });
// シートを取得します。
var sheet = spread.sheets[0];
var excelIO = new GC.Spread.Excel.IO();
$("#button1").click(function () {
spread.suspendPaint();
// 新しいカルチャ情報を作成します。
var culture = new GC.Spread.Common.CultureInfo();
culture.LocalNumberFormat = {
14: "yyyy/m/d"
};
// カルチャ情報をCultureManagerに設定します。
GC.Spread.Common.CultureManager.addCultureInfo("fr", culture);
GC.Spread.Common.CultureManager.culture("fr");
// Excelファイルをインポートします。
var excelFile = document.getElementById("fileDemo").files[0];
excelIO.open(excelFile, function (json) {
var workbookObj = json;
spread.fromJSON(workbookObj);
}, function (e) {
console.log(e);
});
spread.resumePaint();