当前位置 : 主页 > 手机开发 > harmonyos >

asp中导出到CSV

来源:互联网 收集:自由互联 发布时间:2023-10-08
'=========================================================='将纪录输出为(.csv)文件'制作日期:2003年3月作者 :塞北的雪'==========================================================Class Export_CSV private FSO '文件系统对
'==========================================================
'将纪录输出为(.csv)文件
'制作日期:2003年3月
作者         :塞北的雪
'==========================================================
Class Export_CSV
   private FSO '文件系统对象
   private fExport
   dim Exp_Type      private sub Class_Initialize()
       set FSO= Server.CreateObject("Scripting.FileSystemObject")   '建立文件系统对象实例
       Exp_Type=1   '导出类型  1为追加方式写入一个文件  2为新建一个新文件再写入
   end sub
   
   '关闭对象
   private sub Class_Terminate()
       fExport.Close
       set FSO=nothing
   end sub
   
   '导出主程序(用数组指定字段)
   public Function ExportFile(fullpath,rsSet, HeaderArray)
        if Exp_type=1 then
             if not ExistFile(fullpath) then
                if CreateFile(fullpath) then
                   WriteHeader HeaderArray
                   WriteBody rsSet,HeaderArray
                else
                   err_Show "创建文件时发生错误!"
                end if
             else
                 
                if OpenFile(fullpath) then
                  WriteBody rsSet,HeaderArray                
                else
                  err_Show "打开文件时发生错误!"                                   
                end if
             end if
        elseif Exp_type=2 then
             if ExistFile(fullpath) then
                   err_Show "文件名冲突!"
             else
                if CreateFile(fullpath) then
                   WriteHeader HeaderArray   
                   WriteBody rsSet,HeaderArray
                else
                   err_Show "创建文件时发生错误!"                                   
                end if
             end if     
        end if
        if err=0 then
           ExportFile=true
        else
           ExportFile=false
        end if
   end function
   
   '指定的标题书写
   public sub WriteHeader( HeaderArray)
         sLine = ""
         for i=0 to ubound(HeaderArray,2)
            sLine=sLine & "," & HeaderArray(0,i)
         next
         if sLine<>"" then       
            sLine=right(sLine,len(sLine)-1)
            fExport.WriteLine(sLine)
         end if
   end sub
 
 '记录集指定的字段信息输出
   public sub WriteBody(rsSet, HeaderArray)
     rsSet.movefirst
     Do Until rsSet.EOF
       sLine = ""
       for i=0 to ubound(HeaderArray,2)
          sLine=sLine & "," & rsSet(HeaderArray(1,i))
       next
      
       if sLine <> "" then
         sLine = right(sLine, Len(sLine)-1)
         fExport.WriteLine(sLine)
       end if 
       rsSet.MoveNext
     Loop
   end sub
   
   
   '导出主程序(完全记录集)
    public Function ExportFile2(fullpath,rsSet)
        if Exp_type=1 then
             if not ExistFile(fullpath) then
                if CreateFile(fullpath) then
                   WriteHeader2 rsSet
                   WriteBody2 rsSet
                else
                   err_Show "创建文件时发生错误!"
                end if
             else
                 
                if OpenFile(fullpath) then
                  WriteBody2 rsSet                
                else
                  err_Show "打开文件时发生错误!"                                   
                end if
             end if
        elseif Exp_type=2 then
             if ExistFile(fullpath) then
                   err_Show "文件名冲突!"
             else
                if CreateFile(fullpath) then
                   WriteHeader2 rsSet   
                   WriteBody2 rsSet
                else
                   err_Show "创建文件时发生错误!"                                   
                end if
             end if     
        end if
        if err=0 then
           ExportFile2=true
        else
           ExportFile2=false
        end if
   end function
   
   '以字段名为标题书写
   public sub WriteHeader2(rsSet)
         sLine = ""
         for i=0 to rsSet.fields.count-1
            sLine=sLine & "," & rsSet.fields(i).name
         next
         if sLine<>"" then       
            sLine=right(sLine,len(sLine)-1)
            fExport.WriteLine(sLine)
         end if
   end sub
 
 '输出记录集中信息
   public sub WriteBody2(rsSet)
     rsSet.movefirst
     Do Until rsSet.EOF
       sLine = ""
       for i=0 to rsSet.fields.count-1
          sLine=sLine & "," & rsSet.fields(i).value
       next
      
       if sLine <> "" then
         sLine = right(sLine, Len(sLine)-1)
         fExport.WriteLine(sLine)
       end if 
       rsSet.MoveNext
     Loop
   end sub
   
   '输出错误信息
   private sub Err_Show(errDesc)
      Response.Write errDesc
      Response.End 
   end sub
   
   '创建一个文件
   public Function CreateFile(fullpath)
        Set fExport = FSO.CreateTextFile(FullPath, false)
        if err=0 then
           CreateFile=true
        else
           CreateFile=false
        end if
   end function
   
   '打开一个文件
   public Function OpenFile(fullpath)
            set fExport=FSO.OpenTextFile(fullPath,8,false)
            if err=0 then
               OpenFile=true
            else
              OpenFile=false
            end if
   end function
   
   
   '判断指定文件名的文件是否存在
   public function ExistFile(fullpath)
       if FSO.FileExists(fullpath) then
           ExistFile=true
       else
           ExistFile=false
       end if  
   end function
      
end Class
上一篇:祝天下有情人终成眷属
下一篇:没有了
网友评论