[方法] ブックを保存する
Excel Web Services は Excel Services に対するフロントエンド インターフェイスです。一般に、Excel Services ではファイルの作成、変更、または保存は行わず、ファイルを読み取ってセッションを開始するだけです。このため、Excel Web Services にはブックを保存する方法がありません。
ブックを保存するには、一般に保存先ファイル ストアの API を使用します。次に例を示します。
Excel ファイルを Windows SharePoint Services 3.0 ドキュメント ライブラリに保存する場合は、Windows SharePoint Services 3.0 オブジェクト モデルまたは Web サービスを使用します。
Excel ファイルをストリーム、ローカル ファイル、またはファイル共有に保存する場合は、Microsoft .NET Framework ライブラリを使用します。
Excel ファイルを HTTP の場所に保存に保存する場合は、WebDAV (Distributed Authoring and Versioning) を使用します。
注意
WebDAV は HTTP/DAV プロトコルまたは DAV プロトコルとも呼ばれます。
さまざまな .NET Framework ライブラリを使用してブックを保存することができます。以下の例は、そのうちの 1 つの方法を示しています。
例
以下のサンプル コードでは Console.OpenStandardOutput メソッドを使用して標準出力ストリームを取得しています。その後、System.IO.BinaryWriter.Write メソッドを使用してブック全体または Web サービスの GetWorkbook メソッドによって返されたスナップショット ファイル記述しています。以下のコードに示すように、stdout およびコマンドライン filename 引数を使用してスナップショットをファイルに記述しています。
BinaryWriter binaryWriter =
new BinaryWriter(Console.OpenStandardOutput());
binaryWriter.Write(workbook);
binaryWriter.Close();
OpenStandardOutput および Write メソッドの詳細については、Microsoft .NET Framework クラス ライブラリのマニュアルを参照してください。
以下のサンプルは、スナップショットを取得してそれを標準出力に記述する方法を示しています。スナップショットの詳細については、「[方法] ブック全体またはスナップショットを取得する」トピックを参照してください。GetWorkbook メソッドの詳細については、Excel Web Services のリファレンス ドキュメントを参照してください。
// Open the workbook, then call GetWorkbook
// and close the session.
string sessionId = xlService.OpenWorkbook(args[0], "en-US", "en-US", out status);
// Get a full snapshot of the workbook.
byte[] workbook = xlService.GetWorkbook(sessionId, WorkbookType.FullWorkbook, out status);
// Close workbook. This also closes the session.
status = xlService.CloseWorkbook(sessionId);
// Write the resulting Excel file to stdout, as a binary stream.
BinaryWriter binaryWriter = new BinaryWriter(Console.OpenStandardOutput());
binaryWriter.Write(workbook);
binaryWriter.Close();
See Also
タスク
手順 1 : Web サービス クライアント プロジェクトを作成する
[ウォークスルー] Excel Web Services を使用してカスタム アプリケーションを開発する