| FileName | WideString. Una cadena que indica el nombre del archivo que se va a guardar. Puede incluir una ruta completa; si no lo hace, Workbook guarda el archivo en la carpeta actual |
| FileFormat | TXLSFileFormat opcional. Valor que indica el formato del archivo que se guardará. El valor predeterminado es xlExcel97 |
| Stream | TStream. Saves libro stream especificado en el Stream parameter |
La salida de archivos XLS completa la serialización en un archivo de staging hermano antes de reemplazar el destino; un commit fallido deja el destino existente intacto y reporta el error nativo capturado a través de los diagnósticos del libro
En sistemas de archivos de Windows con rename POSIX, el reemplazo puede completarse mientras un identificador de metadatos o de lectura que permite la eliminación sigue abierto; un lector existente sigue viendo el objeto de archivo original, y un lector nuevo del nombre de destino ve el reemplazo completado
El destino debe permitir el acceso de eliminación y el uso compartido de eliminación, y los destinos de solo lectura siguen rechazándose; un commit fallido no se reintenta, mientras que los destinos ausentes, las rutas de reparse y los sistemas de archivos no soportados usan la ruta heredada de commit seleccionada antes del reemplazo
El reemplazo atómico protege la publicación de un archivo completado; no proporciona aislamiento compare-and-swap frente a otro proceso que reemplace el mismo nombre de forma concurrente
| xlExcel97 | Formato de archivo MS Excel 97, 2000, XP, 2003 |
| xlExcel5 | Formato de archivo MS Excel 5, 95 |
| xlHTML | Formato de archivo HTML |
| xlRTF | Formato de texto enriquecido (RTF) |
| xlCSV | Formato de archivo de valores separados por comas (CSV) |
| xlText | Formato de archivo de valores separados por tabulaciones (TSV) |
| xlUnicodeCSV | Formato de archivo CSV de valores unicode separados por comas |
| xlUnicodeText | Formato de archivo TSV de valores unicode separados por tabulaciones |
Var
Workbook: IXLSWorkbook;
begin
Workbook := TXLSWorkbook.Create; {create new Workbook}
Workbook.Worksheets.Add;
{...}
//Save libro as Excel 97 archivo formato
Workbook.SaveAs('C:\book.xls');
//Save libro as Excel 5-95 archivo formato
Workbook.SaveAs('C:\book5.xls', xlExcel5);
//Save libro as HTML
Workbook.SaveAs('C:\book.html', xlHTML);
//Save libro as RTF archivo
Workbook.SaveAs('C:\book.rtf', xlRTF);
//Save active hoja de cálculo as comma separated valores (CSV)
Workbook.SaveAs('C:\book.csv', xlCSV);
//Save active hoja de cálculo as tab separated valores (TSV)
Workbook.SaveAs('C:\book.tsv', xlText);
//Save active hoja de cálculo as comma separated unicode valores (CSV)
Workbook.SaveAs('C:\book.csv', xlUnicodeCSV);
//Save active hoja de cálculo as tab separated unicode valores (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;