解决ASP导出查询结果到Excel中的身份证号问题

  • 来源: knowsky  作者: 若水   2008-04-09/13:33
  •     近日在用aspaccess数据库的查询结果导出为excel文件时,出现一点问题,因为有一个字段是身份证号码,在导出的excel文件中,所有身份证号后3位全部变成0了!真是郁闷啊!网上查了一下才知道是excel默认的数字格式是"常规",只能正常显示输入的11位数字,超过11位就用科学记数法显示了。
    为了解决这个问题,我只能把查询的数据标识成文本型数据,下面是部份代码:
    <%
    '导出到excel
    set rs = server.createobject("adodb.recordset")
    sqlstr="select * from tabname where"&searhsql '查询语句
    rs.open sqlstr,oconn,1,3
    %>
    <%set fs = server.createobject("script_ing.filesystemobject")
    '存放文件
    filename="info.xls"
    temp=filename
    filename=request.servervariables("appl_physical_path")&"&#92;"+filename
    '删除存在的excel文件
    'if fs.fileexists(filename) then
    'fs.deletefile(filename)
    'end if
    '-创建excel文件
    set myfile = fs.createtextfile(filename,true)
    dim strline,responsestr
    strline=""
    for each x in rs.fields
    strline= strline & x.name & chr(9)
    next
    '将表的列名先写入excel
    myfile.writeline strline
    while not rs.eof
    strline=""
    for each x in rs.fields
    '这里把数据标识成文本类型
    strline= strline & "="""&x.value &""""& chr(9)
    next
    '将表的数据写入excel
    myfile.writeline strline
    rs.movenext
    wend
    link="<a href=&#92;" _fcksavedurl="&#92;"" & temp & " title=将数据保存至eecel表中><font color=red><b>导出excel文件</b></font></a>"
    response.write link
    set myfile = nothing
    set fs=nothing
    rs.close
    %>
    实例源代码下载:
    http://code.knowsky.com/down/12254.html

    评论 {{userinfo.comments}}

    {{money}}

    {{question.question}}

    A {{question.A}}
    B {{question.B}}
    C {{question.C}}
    D {{question.D}}
    提交

    驱动号 更多