| FileName | WideString 保存するファイル名を示す文字列 フルパスを含めることができ、指定しない場合は Workbook が現在のフォルダーに保存する |
| FileFormat | 省略可能な TXLSFileFormat: 保存するファイルの形式を示す値。既定値は xlExcel97 |
| Stream | Stream パラメータで指定したストリームに Workbook を保存する TStream |
XLS ファイル出力は、出力先を置き換える前に同じフォルダー内のステージング ファイルでシリアライズを完了させます。コミットに失敗しても既存の出力先はそのまま残り、捕捉されたネイティブ エラーがワークブック診断を通じて報告されます
POSIX rename をサポートする Windows ファイルシステムでは、削除を許可するメタデータやリーダー ハンドルが開いたままでも置き換えが成功することがあります。既存のリーダーは元のファイル オブジェクトを見続け、出力先名の新しいリーダーは完了した置き換えを見ます
出力先は削除アクセスと削除共有を許可する必要があり、読み取り専用ターゲットは引き続き拒否されます。失敗したコミットは再試行されません。欠落ターゲット、reparse パス、サポート外のファイルシステムは、置き換え前に選択された従来のコミット パスを使用します
アトミックな置き換えは、完成した 1 つのファイルの公開を保護するものです。同じ名前を別のプロセスが同時に置き換える場合に対する compare-and-swap 分離は提供しません
| xlExcel97 | MS Excel 97,2000,XP,2003 file format |
| xlExcel5 | MS Excel 5,95 file format |
| xlHTML | HTML file format |
| xlRTF | Rich Text Format (RTF) |
| xlCSV | 固有のスタイルと色を持ち、次のオブジェクト経由で適用されます |
| xlText | Tab separated values file format (TSV) |
| xlUnicodeCSV | の色ソース優先順位(テーマ > インデックス > RGB) |
| xlUnicodeText | エントリーごとの水平 / 垂直 / 折り返し / インデント / 回転の 各調整項目の説明です |
Var
Workbook: IXLSWorkbook;
begin
Workbook := TXLSWorkbook.Create; {create new Workbook}
Workbook.Worksheets.Add;
{...}
//Save Workbook as Excel 97 file format
Workbook.SaveAs('C:\book.xls');
//Save Workbook as Excel 5-95 file format
Workbook.SaveAs('C:\book5.xls', xlExcel5);
//Save Workbook as HTML
Workbook.SaveAs('C:\book.html', xlHTML);
//Save Workbook as RTF file
Workbook.SaveAs('C:\book.rtf', xlRTF);
//Save active Worksheet as comma separated values (CSV)
Workbook.SaveAs('C:\book.csv', xlCSV);
//Save active Worksheet as tab separated values (TSV)
Workbook.SaveAs('C:\book.tsv', xlText);
//Save active Worksheet as comma separated unicode values (CSV)
Workbook.SaveAs('C:\book.csv', xlUnicodeCSV);
//Save active Worksheet as tab separated unicode values (TSV)
Workbook.SaveAs('C:\book.tsv', xlUnicodeText);
end;
var
MS: TMemoryStream;
begin
if not (ClientDataSet1.State in [dsInsert, dsEdit]) then
ClientDataSet1.Insert;
MS := TMemoryStream.Create();
try
FWorkbook.SaveAs(MS);
ClientDataSet1Documents.LoadFromStream(MS);
finally
MS.Free;
end;
ClientDataSet1.Post;
end;