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

王朝asp·作者佚名  2008-06-01
窄屏简体版  字體: |||超大  

近日在用asp把access数据库的查询结果导出为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;" & 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

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航