您的位置:程序门 -> delphi -> 数据库相关



怎么把degrid中显示的数据导出成txt文件


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


怎么把degrid中显示的数据导出成txt文件
发表于:2007-05-21 09:45:56 楼主
怎么把degrid中显示的数据导出成txt文件
发表于:2007-05-21 09:58:061楼 得分:0
转一个    
coolfilm(苏飞工作室)


procedure       dbgridtotext(source:tobject);    
    {//////////简单的数据集存入文本文件涵数///////////}    
    {//////////输入输入参数:数据集对象或dbgrid;输出参数:文本文件;//////}    
    {//////////autor:xgy       qq:103819519           2003-7-15       //////////////////}    
    var    
            filename:textfile;    
            dataset:tdataset;    
            titlestr,valuestr,tempstr:string;    
            counter:integer;    
            savedlg:tsavedialog;    
    begin    
            savedlg:=tsavedialog.create(nil);    
            dataset:=tdataset.create(nil);    
            if       (source       is       tdbgrid)       then    
                dataset:=tdbgrid(source).datasource.dataset    
            else    
                dataset:=tdataset(source);    
            if       ((dataset.isempty)       or       (not       dataset.active))       then    
                exit    
            else    
            begin    
                    dataset.disablecontrols;    
                    dataset.first;    
                    if       savedlg.EXECute       then    
                    begin    
                            assignfile(filename,savedlg.filename);    
                            rewrite(filename);    
                            for       counter:=0       to       dataset.fieldcount-1       do    
                            titlestr:=titlestr+char(9)+dataset.fields[counter].displaylabel;    
                            titlestr:=trim(titlestr);    
                            writeln(filename,titlestr);    
                            while       not       dataset.eof       do    
                            begin    
                                valuestr:= ' ';    
                                for       counter:=0       to       dataset.fieldcount-1       do    
                                begin    
                                        tempstr:=dataset.fields[counter].text;    
                                        valuestr:=valuestr+char(9)+tempstr;    
                                end;    
                            valuestr:=trim(valuestr);    
                            writeln(filename,valuestr);    
                            dataset.next;    
                            end;    
                                closefile(filename);    
                            end;    
                                dataset.enablecontrols;    
                            end;    
            savedlg:=nil;    
            dataset:=nil;    
    end;


快速检索

最新资讯
热门点击