delphi TMS FlexCel 保存Excel

TMS FlexCel 保存Excel

属性和方法

TExcelFile.AllowOverwritingFiles

property AllowOverwritingFiles: Boolean

调用Save()是否会自动覆盖现有文件。

TExcelFile.Save

procedure Save(const fileName: string);
procedure Save(const aStream: TStream);
procedure Save(const fileName: string; const fileFormat: TFileFormats);
procedure Save(const aStream: TStream; const fileFormat: TFileFormats);
procedure Save(const fileName: string; const fileFormat: TFileFormats; const delimiter: Char);
procedure Save(const aStream: TStream; const fileFormat: TFileFormats; const delimiter: Char);
procedure Save(const fileName: string; const fileFormat: TFileFormats; const delimiter: Char; const fileEncoding: TEncoding);
procedure Save(const aStream: TStream; const fileFormat: TFileFormats; const delimiter: Char; const fileEncoding: TEncoding);

将文件保存到磁盘或流。

重载

Save(string)Save(TStream)

使用TFileFormats.Automatic文件格式进行保存

参数

fileName 要保存的文件。

如果覆盖现有文件 AllowOverwritingFilesfalse,则fileName 中指定的文件必须不存在。

aStream 保存文件的流。 必须是可搜索的流。

fileFormat 文件格式。 如果fileName存在,自动将尝试从文件名中猜测它。如果文件格式为文本,则将使用制表符作为分隔符。

delimiter 文件格式为TFil Formats.Text时使用的分隔符

fileEncoding 编写文本分隔文件(csv 或 txt)时生成的文件的编码。该参数对xls/x文件无效。如果省略,将使用 Encoding.UTF8

请注意,要使用 BOM(字节顺序标记)创建文件,您需要在此处指定编码,与使用StreamWriter一样。

TExcelFile.DefaultFileFormat

property DefaultFileFormat: TFileFormats

确定在保存文件时未指定文件格式,以及无法通过文件扩展名确定文件格式时Excel使用的默认文件格式。如果设置为Automatic,文件将以打开时相同的格式保存。也就是说,如果您打开一个xlsx文件,它将被保存为xlsx。如果您打开了一个 xls 文件(或使用XlsFile.NewFile()创建它的),它将被保存为 xls。 当此属性为 Automatic 时,文本文件将保存为 xls。默认值 Automatic

TFileFormats

支持读取和写入文件的文件格式。

unit

FlexCel.Core

Automatic 打开文件时自动检测文件的类型。如果在保存时使用,FlexCel 将根据文件扩展名(保存到文件时)或 TExcelFile.DefaultFileFormat 的值(保存到流时或无法从扩展名确定格式时)选择使用 xls 还是 xlsx .

Xls Excel 97-2000-XP-2003

Text 分隔符分隔值。根据分隔符的不同,这可以是csv、tab分隔的文本等。

Pxl Pocket Excel 1.0 or 2.0

Xlsx Excel 2007标准文件格式。注意,这不是一个启用宏的文件格式。如果希望保存带有宏的文件,则需要改用Xlsm。

Xlsm Excel 2007 启用宏的文件格式。

例子

另存为

uses VCL.FlexCel.Core, FlexCel.XlsAdapter;

procedure TForm1.Button7Click(Sender: TObject);
var
  Xls: TXlsFile;
begin
  //读取Excel文件
  Xls := TXlsFile.Create('C:\Users\Administrator\Desktop\ceshi.xlsx');
  try
    //覆盖已存在文件
    Xls.AllowOverwritingFiles := True;
    //另存为其他文件名
    Xls.Save('C:\Users\Administrator\Desktop\ceshi_副本.xlsx');
    //保存为xls格式文件
    Xls.Save('C:\Users\Administrator\Desktop\ceshi_.xls');
    //保存为csv文件
    Xls.Save('C:\Users\Administrator\Desktop\ceshi_.csv', TFileFormats.Text, ',');
    //保存为文本文件 ANSI编码
    Xls.Save('C:\Users\Administrator\Desktop\ceshi_.txt', TFileFormats.Text, #9, TEncoding.ANSI);
  finally
    Xls.Free;
  end;
end;
posted @ 2022-07-11 15:05  txgh  阅读(583)  评论(0编辑  收藏  举报