| FileName | WideString. Een tekenreeks die de naam van het op te slaan bestand aangeeft. Je kunt een volledig pad opnemen; doe je dat niet, dan slaat Workbook het bestand op in de huidige map |
| FileFormat | Optionele TXLSFileFormat. Een waarde die het formaat van het op te slaan bestand aangeeft. Standaard is xlExcel97 |
| Stream | TStream. Slaat Workbook op in een stream die via de parameter Stream wordt opgegeven |
XLS-bestandsuitvoer rondt de serialisatie af in een staging-bestand naast de bestemming voordat de bestemming wordt vervangen; een mislukte commit laat de bestaande bestemming intact en meldt de vastgelegde native fout via de werkmapdiagnostiek
Op Windows-bestandssystemen die POSIX-rename ondersteunen kan vervanging slagen terwijl er nog een metadata- of lezerhandle open staat die verwijdering toestaat; een bestaande lezer blijft het oorspronkelijke bestandsobject zien, en een nieuwe lezer van de bestemmingsnaam ziet de voltooide vervanging
De bestemming moet delete-toegang en delete-sharing toestaan, en alleen-lezen doelen worden nog steeds geweigerd; een mislukte commit wordt niet opnieuw geprobeerd, terwijl ontbrekende doelen, reparse-paden en niet-ondersteunde bestandssystemen het legacy-commitpad gebruiken dat vóór de vervanging is gekozen
Atomische vervanging beschermt de publicatie van één voltooid bestand; het biedt geen compare-and-swap-isolatie tegen een ander proces dat dezelfde naam tegelijk vervangt
| xlExcel97 | MS Excel 97,2000,XP,2003-bestandsformaat |
| xlExcel5 | MS Excel 5,95-bestandsformaat |
| xlHTML | HTML file format |
| xlRTF | Rich Text Format (RTF) |
| xlCSV | Bestandsformaat met door komma's gescheiden waarden (CSV) |
| xlText | Bestandsformaat met door tabs gescheiden waarden (TSV) |
| xlUnicodeCSV | Bestandsformaat met door komma's gescheiden unicode-waarden (CSV) |
| xlUnicodeText | Bestandsformaat met door tabs gescheiden unicode-waarden (TSV) |
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;