//TXLSReadWriteII2版本导出Excel文件: procedure TForm1.N1Click(Sender: TObject); var i: Integer; aSaveDialog: TSaveDialog; aFileName, aStampTime: AnsiString; aXlsObj: TXLSReadWriteII2; p: PDataRec; begin aSaveDialog := TSaveDialog.Create(Self); try aSaveDialog.InitialDir := ExtractFilePath(ParamStr(0)); aSaveDialog.DefaultExt := 'xls'; aSaveDialog.Filter := 'Excel文件(*.xls)|*.xls|所有文件(*.*)|*.*'; aStampTime := FormatDateTime('yyyymmddhhnnss', Now); aSaveDialog.FileName := aStampTime; if not aSaveDialog.Execute then Exit; aFileName := aSaveDialog.FileName; if aFileName = '' then Exit; finally aSaveDialog.Free; end; aXlsObj := TXLSReadWriteII2.Create(nil); try aXlsObj.Sheets[0].AsWideString[0, 0] := 'id'; aXlsObj.Sheets[0].AsWideString[1, 0] := 'table'; aXlsObj.Sheets[0].AsWideString[2, 0] := 'kind'; aXlsObj.Sheets[0].AsWideString[3, 0] := 'rows'; aXlsObj.Sheets[0].AsWideString[4, 0] := 'times'; aXlsObj.Sheets[0].AsWideString[5, 0] := 'desc'; for i:=1 to FDataHash.Count - 1 do begin p := FDataHash[i]; aXlsObj.Sheets[0].AsWideString[0, i] := Format('%d', [p.id]); aXlsObj.Sheets[0].AsWideString[1, i] := p.table; aXlsObj.Sheets[0].AsWideString[2, i] := p.kind; aXlsObj.Sheets[0].AsWideString[3, i] := Format('%d', [p.rows]); aXlsObj.Sheets[0].AsWideString[4, i] := Format('%d', [p.times]); aXlsObj.Sheets[0].AsWideString[5, i] := p.desc; end; aXlsObj.Filename := aFileName; aXlsObj.Write; ShowMessage(Format('导出文件'+#13#10+'%s'+#13#10 +'成功!', [aFileName])); finally aXlsObj.Free; end; end;