欢迎来到天天文库
浏览记录
ID:10088043
大小:30.50 KB
页数:3页
时间:2018-05-25
《csv格式将数据转换为excel的函数》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、csv格式将数据转换为excel的函数声明部分procedure DataToExcelCSV(SaveFileName:string;DataSet:TDataSet;ShowCompleteBoX:Boolean=True;GroupCount:integer=1);......{------------------------------------------------------}{检测findStr是否inmainStr,如果存在则返回True,否则False}{-------------------------
2、-----------------------------}functionTFun.IsStrInOtherStr(mainStr,FindStr:string):Bool;begin ifstrPos(pAnsiChar(mainStr),pAnsichar(FindStr))=nil then result:=False else result:=True;end;-----------------------------------------------------------------------------
3、--------//lijinhao2004-4-4//采用csv格式..将数据转换为excel.//速度非常快,而且具有分栏功能//避免了用comobj带来到弊端//GroupCount:用于设定分栏数。。默认为1//ShowCompleteBoX:boolean;来设定完成是否显示完成提示//-------------------------------------------------------------------------------procedure TFun.DataToExcelCSV(SaveFile
4、Name:string;DataSet:TDataSet;ShowCompleteBoX:Boolean;GroupCount:integer); FunctionCheckStr(str:string):string; begin ifIsStrInOtherStr(str,',')thenstr:='"'+str+'"'; result:=str; end; //===============//var ExcelFile:TextFile; iRecordCount:integer;//记录数 iFieldCou
5、nt:integer;//字段数 i,j,k:integer; TempStr:string;begin try if NotDataSet.ActivethenDataSet.Open; iRecordCount:=DataSet.RecordCount; iFieldCount:=DataSet.FieldCount; assignFile(ExcelFile,SaveFileName+'.csv'); rewrite(ExcelFile); DataSet.First; (*--
6、------写字段头------*) TempStr:=''; forK:=0toiFieldCount-1do//字段数 begin ifTempStr<>''then TempStr:=TempStr+','+CheckStr(DataSet.Fields[k].FieldName) else TempStr:=CheckStr(DataSet.Fields[k].FieldName) end;(*forK:=1toFieldCountdo
7、*) fori:=1toGroupCount-1do TempStr:=TempStr+','+TempStr; writeLn(ExcelFile,TempStr); //--------------------------------- (*写入记录,按分栏数来写*) i:=1; whilei<=round(iRecordCountdivGroupCount)do begin TempStr:=''; //如:F0F1F2F3
8、F0F1F2F3
9、 forj:=1toGroupCountdo//分栏数 begin ifDataSet.Eofthenbreak; inc(i); forK:=0toiFieldCount-1do//字段数
此文档下载收益归作者所有