ASP中文本文件与数据库文件的数据交换(FSO)

来源:互联网 发布:淘宝主图视频拍摄技巧 编辑:程序博客网 时间:2024/06/05 16:14

网络数据库的应用是WWW上一个很重要的组成部分,可以这样说,如果缺少了数据库,网络也就失去了灵魂。大家可以想象一下,如果没有象YAHOO,SOHU等搜索引擎的话,那么在网上寻找一个目标变得多么困难,大家在茫茫网海里变得不知所往,动辄迷失方向。其实,这些搜索引擎是网络数据库的最典型的应用,在ASP(Active Server Pages)技术里对数据库的直接操作是比较多的,下面讲述一种由文本文件向数据库文件传递数据的方法。 
这个文本文体是由终端采集传送到服务器的一个固定目录下,由服务器去读取数据并存放在本机数据库里,转换完后删除掉这个文本文件。这样终端负责采集数据,并按给定的格式上传到服务器的指定目录下,服务器端的数据库对终端来讲是完全不透明的,保障了服务器的安全,对现在的网络数据库应用来讲或许有点帮助。 
Txttolib.asp 
<html>

<head> 
<meta http-equiv="refresh" content="30;url=deltext.asp"> 
<meta http-equiv="Content-Type" 
content="text/html; charset=gb_2312-80"> 
<meta name="GENERATOR" content="Microsoft FrontPage Express 2.0"> 
<title>[把文本文件转换成数据库文件]</title> 
</head>

<body bgcolor="#FFFFFF"> 
<align="center"> 
<p align="center"><font color="#FF0000">正在处理数据,请稍候! 
<br> 
</font><font color="#000000"><align="center"><% 
str=server.mappath("/") ‘取得服务器的根目录 
Set fso = CreateObject("Scripting.FileSystemObject") 
Set f = fso.GetFolder(str & "\thetext") 
Set fc = f.Files 
k=1 
For Each f1 in fc 
file(k)=f1.name ‘得到此路径下的所有文件名 
k=k+1 
next 
%><% ii=1%><% 
set fs = CreateObject("Scripting.FileSystemObject")%><% 
while ii<k 
response.write file(ii) & "<br>" 
set textinstance=fs.opentextfile(str & "\thetext\" & file(ii),1,false,false)‘打开文件来读数据 
while textinstance.atendofstream<> true ‘如果文件没有结束 
visitornum=textinstance.readline ‘读进一行数据 
j=0 
cd=len(visitornum) 
for i=1 to cd 
if mid(visitornum,i,1)="," then ‘数据与数据之间以“,”隔开 
j=j+1 
else 
select case j‘分别取得各数据值 
case 0 
me1=me1+mid(visitornum,i,1) 
case 1 
me2=me2+mid(visitornum,i,1) 
case 2 
me3=me3+mid(visitornum,i,1) 
case 3 
me4=me4+mid(visitornum,i,1) 
case 4 
me5=me5+mid(visitornum,i,1) 
case 5 
me6=me6+mid(visitornum,i,1) 
end select 
end if 
next 
response.write me1 & " " & me2 & " " & me3 & " " & me4 & " " & me5 & " " & me6 & " " & "<br>" 
set cn=server.createobject("adodb.connection") 
cn.open "water","","" 
set rs=server.createobject("adodb.recordset") 
sql="select * from watertable" 
rs.open sql,cn,3,3‘打开数据库进行追加操作 
if rs.eof=true then 
on error resume next 
'rs.movelast 
rs.movefirst 
on error resume next 
end if 
rs.addnew‘增加一条记录 
rs("wvalue")=me1 
rs("wdate")=me2 
rs("wtime")=me3 
rs("zxz")=me4 
rs("jdh")=me5 
rs("czh")=me6 
rs.update‘更新数据 
rs.close 
me1="" 
me2="" 
End Function 
%>

0 0
原创粉丝点击