DioDocs for Excel
DioDocs for Excel
sjs ファイルのインポートとエクスポート
ファイル操作 > SpreadJS ファイルのインポートとエクスポート > sjs ファイルのインポートとエクスポート

SpreadJS V16J では、大規模で複雑なファイルをより高速に処理し、保存時によりサイズの小さなファイルを生成するために、新しいファイル形式 sjs が導入されました。新しい sjs 形式は、複数の小さな JSON ファイルを含む zip ファイルであり、xlsx ファイルの XML 構造と同様の構造になっています。

本製品では、xlsx や csv などのファイル形式と同様に、新しい sjs ファイル形式をインポートおよびエクスポートすることができます。sjs ファイルをインポートするには、Workbook クラスの Open メソッドを使用します。ファイル読み込み後、Workbook クラスの Save メソッドを使用して xlsx ファイルや sjs ファイルにエクスポートすることができます。sjs ファイルを読み込み保存する際に、OpenFileFormat  列挙型および SaveFileFormat 列挙型の新しいオプション「Sjs」を使用することができます。

次のサンプルコードは、ファイル名を指定して sjs ファイルをインポートしエクスポートする方法を示しています。

C#
コードのコピー
// ワークブックを初期化します
Workbook workbook = new Workbook();

// sjs ファイルを開きます
workbook.Open("ProjectPlan.sjs", OpenFileFormat.Sjs);

// sjs ファイルを保存します
workbook.Save("SaveProjectPlan.sjs", SaveFileFormat.Sjs);

次のサンプルコードは、ファイルストリームから sjs ファイルをインポートおよびエクスポートする方法を示しています。

C#
コードのコピー
// ワークブックを初期化します
Workbook workbook = new Workbook();

// ストリームから sjs ファイルを開きます
var importStream = new FileStream("ProjectPlan.sjs", FileMode.Open);
workbook.Open(importStream, OpenFileFormat.Sjs);

// sjs ファイルをストリームに保存します
var exportStream = new FileStream("SaveProjectPlan.sjs", FileMode.Create);
workbook.Save(exportStream, SaveFileFormat.Sjs);

さらに、sjs ファイルのインポートとエクスポートをカスタマイズできる SjsOpenOptions クラスと SjsSaveOptions クラスがあります。これらのオプションは、多数の数式、スタイル、未使用の定義された名前を含むファイルなど、サイズの大きなファイルを処理する場合に特に便利です。オプションの一覧は以下のとおりです。

クラス オプション 説明
インポートのオプション SjsOpenOptions IncludeStyles sjs ファイルを読み込む際にスタイルを含めるかどうかを指定します。デフォルトは true です。
IncludeFormulas sjs ファイルを読み込む際に数式を含めるかどうかを指定します。デフォルトは true です。
エクスポートのオプション SjsSaveOptions IncludeStyles sjs ファイルを保存する際にスタイルを含めるかどうかを指定します。デフォルトは true です。
IncludeFormulas sjs ファイルを保存する際に数式を含めるかどうかを指定します。デフォルトは true です。
IncludeUnusedNames sjs ファイルを保存する際に未使用の定義された名前を含めるかどうかを指定します。デフォルトは true です。
IncludeEmptyRegionCells sjs ファイルを保存する際に使用範囲外の空のセルを含めるかどうかを指定します。デフォルトは true です。

次のサンプルコードは、SjsOpenOptions と SjsSaveOptions を使用して sjs ファイルをインポートしエクスポートする方法を示しています。

C#
コードのコピー
// ワークブックを初期化します
Workbook workbook = new Workbook();

// 数式を含む sjs ファイルを開きます
SjsOpenOptions openOptions = new SjsOpenOptions();
openOptions.IncludeFormulas = false;
openOptions.IncludeStyles = false;
workbook.Open("ProjectPlan.sjs", openOptions);

// スタイルを含む sjs ファイルを保存します
SjsSaveOptions saveOptions = new SjsSaveOptions();
saveOptions.IncludeStyles = false;
saveOptions.IncludeFormulas = true;
saveOptions.IncludeUnusedNames = false;
saveOptions.IncludeEmptyRegionCells = false;
workbook.Save("SaveProjectPlan.sjs", saveOptions);

sjs ファイル内のすべての JSON ファイルを1つの JSON 文字列またはストリームに統合するには、ToSjsJson メソッドを使用します。なお、このメソッドでも SjsSaveOptions を使用することができます。

クラス メソッド 説明
Workbook ToSjsJson() ワークブックから JSON 文字列を生成します。sjs ファイル内のすべての JSON ファイルを1つの文字列に統合します。
ToSjsJson(SjsSaveOptions options) 保存オプションを使用してワークブックから JSON 文字列を生成します。sjs ファイル内のすべての JSON ファイルを1つの文字列に統合します。
ToSjsJson(Stream stream) sjs ファイル内のすべての JSON ファイルを1つの JSON 文字列に統合し、その文字列をストリームに格納します。
ToSjsJson(Stream stream, SjsSaveOptions options) 保存オプションを使用して sjs ファイル内のすべての JSON ファイルを1つの JSON 文字列に統合し、その文字列をストリームに格納します。

次のサンプルコードは、sjs ファイルを1つの JSON 文字列に統合し、その文字列をストリームに保存しています。

C#
コードのコピー
// ワークブックを初期化します
Workbook workbook = new Workbook();

// sjs ファイルを開きます
workbook.Open("ProjectPlan.sjs", OpenFileFormat.Sjs);

// sjs ファイルから JSON 文字列を生成し、ストリームに保存します
var exportStream = new FileStream("SaveProjectPlan.json", FileMode.Create);
workbook.ToSjsJson(exportStream);