asp读取txt并显示符合要求的
例如我有一个文件夹,里面有很多txt,并且是以日期为文件名的txt。第一步,如何用ASP读取今天昨天前天三个日子的txt,例如今天2010年2月22日我想读今天的,就是2...
例如我有一个文件夹,里面有很多txt,并且是以日期为文件名的txt。
第一步,如何用ASP读取今天昨天前天三个日子的txt,例如今天2010年2月22日 我想读今天的,就是2010年2月22日.txt,昨天就是2010年2月21日.txt,以此类推
第二步 txt的内容大概如下
22:11:10,张三,李四,北京,上海
22:14:43,张三,王五,北京,武汉
22:14:43,李四,王五,上海,武汉
那么如何用ASP读取这个txt后,并按照特定表格来显示我需要的内容,例如我要显示所有里面含有张三名字的内容,并且在网页上显示出来,不符合要求的不显示,显示结果就为:
时间,人物,另一个人物,地点,另一个地点
22:11:10,张三,李四,北京,上海
22:14:43,张三,王五,北京,武汉
没有实现以上2步的 将不给分 我实在没辙了 看了很多ASP和FSO文章 都不知道怎么弄 求高手解决!
2楼写的有点看不懂 希望能更完整点 再就是张三是个变量 输入这个变量后对其TXT进行查询 而且TXT跟IIS目录不在同一个目录 怎么去读 谢谢请完善 展开
第一步,如何用ASP读取今天昨天前天三个日子的txt,例如今天2010年2月22日 我想读今天的,就是2010年2月22日.txt,昨天就是2010年2月21日.txt,以此类推
第二步 txt的内容大概如下
22:11:10,张三,李四,北京,上海
22:14:43,张三,王五,北京,武汉
22:14:43,李四,王五,上海,武汉
那么如何用ASP读取这个txt后,并按照特定表格来显示我需要的内容,例如我要显示所有里面含有张三名字的内容,并且在网页上显示出来,不符合要求的不显示,显示结果就为:
时间,人物,另一个人物,地点,另一个地点
22:11:10,张三,李四,北京,上海
22:14:43,张三,王五,北京,武汉
没有实现以上2步的 将不给分 我实在没辙了 看了很多ASP和FSO文章 都不知道怎么弄 求高手解决!
2楼写的有点看不懂 希望能更完整点 再就是张三是个变量 输入这个变量后对其TXT进行查询 而且TXT跟IIS目录不在同一个目录 怎么去读 谢谢请完善 展开
展开全部
没事情帮你写了一个;你调试看看!将下面的代码全部拷贝下来,不用新建数据库,但是在运行的时候会临时创建一个空的,你可以建立一个index.asp(一定要这个名称!!!) 然后用你的txt文件来试试看!!!我试过可以的。不行的话,qq:380175779
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%
dim databasename '定义数据库名称
dim conn,sql
databasename="tmp.mdb" '数据库名称
dim databasepath '定义数据库存放路径
databasepath=server.MapPath("./")&"/" '数据库绝对路径
Function Createdfile(FilePath,FileName)
Dim Ca
Set Ca = Server.CreateObject("ADOX.Catalog")
call Ca.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & filepath & filename)
End Function
if not DbExists(databasepath&databasename) then
Createdfile databasepath,databasename '创建数据库
end if
if not DbTableExists("tmpData",databasepath&databasename) then
set conn=server.CreateObject("adodb.connection")
conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("tmp.mdb")
sql="Create Table tmpData( Id COUNTER(1, 1) CONSTRAINT PK_TVIPLevel26 PRIMARY KEY,AddTime DATETIME,FirstP varchar(25),SecondP varchar(25),FirstAdrr varchar(25),SecondAdrr varchar(25))"
conn.execute sql
conn.Close()
set Conn=nothing
end if
function DbExists(dbPath)
'查找数据库文件是否存在
On Error resume Next
Dim c
Set c = Server.CreateObject("ADODB.Connection")
c.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbPath
If Err.number<>0 Then
Err.Clear
DbExists = false
else
DbExists = True
End If
set c = nothing
End function
function DbTableExists(tableName,dbPath)
'查找数据库文件是否存在
On Error resume Next
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbPath
set Rs=Server.CreateObject("ADODB.RecordSet")
Rs.open tableName,Conn,1,1
If Err.number<>0 Then
Err.Clear
DbTableExists= false
else
DbTableExists= True
End If
Conn.Close()
set Conn = nothing
End function
%>
<%
function readText(dt)
filename = year(dt) & "年" & month(dt) & "月" & day(dt) & "日.txt"
set fso = Server.CreateObject("Scripting.FileSystemObject")
set f = fso.OpenTextFile(Server.Mappath(filename))
dim i
i=0
do while not f.AtEndOfStream
ReadText=ReadTextFile&f.ReadLine()
txtArr=split(ReadText,",")
ReDim Preserve AddTime(i)
ReDim Preserve FirstP(i)
ReDim Preserve SecondP(i)
ReDim Preserve FirstAdrr(i)
ReDim Preserve SecondAdrr(i)
AddTime(i)=txtArr(0)
FirstP(i)=txtArr(1)
SecondP(i)=txtArr(2)
FirstAdrr(i)=txtArr(3)
SecondAdrr(i)=txtArr(3)
i=i+1
loop
f.Close()
set f = nothing
set fso = nothing
On Error resume Next
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &server.MapPath("tmp.mdb")
If Err.number<>0 Then
Err.Clear
Response.Write("数据库链接错误,请检查数据库链接!")
Response.End()
End If
for i=0 to Ubound(AddTime)
set Rs=Server.CreateObject("ADODB.RecordSet")
Rs.open "tmpData",Conn,1,3
rs.AddNew()
rs("AddTime")=AddTime(i)
rs("FirstP")=FirstP(i)
rs("SecondP")=SecondP(i)
rs("FirstAdrr")=FirstAdrr(i)
rs("SecondAdrr")=SecondAdrr(i)
rs.Update()
rs.Close()
set rs=nothing
next
Conn.Close()
set Conn=nothing
end function
txtTime=Trim(Request.Form("txTime"))
if txtTime<>"" then
session("dt")=txtTime
end if
if session("dt")<>"" then
readText(session("dt"))
end if
On Error resume Next
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &server.MapPath("tmp.mdb")
If Err.number<>0 Then
Err.Clear
Response.Write("数据库链接错误,请检查数据库链接!")
Response.End()
End If
set Rs=Server.CreateObject("ADODB.RecordSet")
key=trim(Request.Form("key"))
if key<>"" then
sql="select * from tmpData where FirstP='"&key&"' or SecondP='"&key&"'"
else
sql="select * from tmpData"
End If
Rs.open sql,Conn,1,3
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>读取文档演示</title>
<style type="text/css">
<!--
body,td,th {
font-size: 12px;
}
.bg{
background-color:#FCF;
border-bottom:#F90 dotted 1px;
}
.bt{
background:#F60;
border:#ccc solid 1px;
width:45px;
height:22px;
line-height:18px;
}
-->
</style></head>
<body>
<form id="form2" action="Index.asp" method="post">
<table width="624" border="0" align="center" cellpadding="3" cellspacing="0">
<tr>
<td width="314" align="right">输入您要代开的文件日期(如2010-02-26):</td>
<td width="198"><label>
<input name="txTime" type="text" id="txTime" size="25" />
</label></td>
<td width="94"><input name="search2" type="submit" class="bt" id="search2" value="打开" /></td>
</tr>
</table>
</form>
<table width="624" border="0" align="center" cellpadding="4" cellspacing="0">
<tr>
<td width="83" align="center" bgcolor="#CCCCCC">编号</td>
<td width="135" align="center" bgcolor="#CCCCCC">时间</td>
<td width="106" align="center" bgcolor="#CCCCCC">人物</td>
<td width="85" align="center" bgcolor="#CCCCCC">另一个人物</td>
<td width="95" align="center" bgcolor="#CCCCCC">地点</td>
<td width="120" align="center" bgcolor="#CCCCCC">另一地点</td>
</tr>
<%for i=1 to rs.recordCount%>
<tr class="bg">
<td align="center"><%=rs(0)%></td>
<td align="center"><%=rs(1)%></td>
<td align="center"><%=rs(2)%></td>
<td align="center"><%=rs(3)%></td>
<td align="center"><%=rs(4)%></td>
<td align="center"><%=rs(5)%></td>
</tr>
<%
rs.MoveNext()
next%>
</table>
<form id="form1" name="form1" method="post" action="Index.asp">
<table width="624" border="0" align="center" cellpadding="3" cellspacing="0">
<tr>
<td width="165" align="right">输入您要查找的人的姓名:</td>
<td width="289">
<label>
<input name="key" type="text" id="key" size="40" />
</label></td>
<td width="152"><input name="search" type="submit" class="bt" id="search" value="查找" /></td>
</tr>
</table>
</form>
</body>
</html>
<%
sql="drop table tmpData "
rs.Close()
set rs=nothing
Conn.Execute(sql)
Conn.Close()
set Conn = nothing
%>
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%
dim databasename '定义数据库名称
dim conn,sql
databasename="tmp.mdb" '数据库名称
dim databasepath '定义数据库存放路径
databasepath=server.MapPath("./")&"/" '数据库绝对路径
Function Createdfile(FilePath,FileName)
Dim Ca
Set Ca = Server.CreateObject("ADOX.Catalog")
call Ca.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & filepath & filename)
End Function
if not DbExists(databasepath&databasename) then
Createdfile databasepath,databasename '创建数据库
end if
if not DbTableExists("tmpData",databasepath&databasename) then
set conn=server.CreateObject("adodb.connection")
conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("tmp.mdb")
sql="Create Table tmpData( Id COUNTER(1, 1) CONSTRAINT PK_TVIPLevel26 PRIMARY KEY,AddTime DATETIME,FirstP varchar(25),SecondP varchar(25),FirstAdrr varchar(25),SecondAdrr varchar(25))"
conn.execute sql
conn.Close()
set Conn=nothing
end if
function DbExists(dbPath)
'查找数据库文件是否存在
On Error resume Next
Dim c
Set c = Server.CreateObject("ADODB.Connection")
c.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbPath
If Err.number<>0 Then
Err.Clear
DbExists = false
else
DbExists = True
End If
set c = nothing
End function
function DbTableExists(tableName,dbPath)
'查找数据库文件是否存在
On Error resume Next
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbPath
set Rs=Server.CreateObject("ADODB.RecordSet")
Rs.open tableName,Conn,1,1
If Err.number<>0 Then
Err.Clear
DbTableExists= false
else
DbTableExists= True
End If
Conn.Close()
set Conn = nothing
End function
%>
<%
function readText(dt)
filename = year(dt) & "年" & month(dt) & "月" & day(dt) & "日.txt"
set fso = Server.CreateObject("Scripting.FileSystemObject")
set f = fso.OpenTextFile(Server.Mappath(filename))
dim i
i=0
do while not f.AtEndOfStream
ReadText=ReadTextFile&f.ReadLine()
txtArr=split(ReadText,",")
ReDim Preserve AddTime(i)
ReDim Preserve FirstP(i)
ReDim Preserve SecondP(i)
ReDim Preserve FirstAdrr(i)
ReDim Preserve SecondAdrr(i)
AddTime(i)=txtArr(0)
FirstP(i)=txtArr(1)
SecondP(i)=txtArr(2)
FirstAdrr(i)=txtArr(3)
SecondAdrr(i)=txtArr(3)
i=i+1
loop
f.Close()
set f = nothing
set fso = nothing
On Error resume Next
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &server.MapPath("tmp.mdb")
If Err.number<>0 Then
Err.Clear
Response.Write("数据库链接错误,请检查数据库链接!")
Response.End()
End If
for i=0 to Ubound(AddTime)
set Rs=Server.CreateObject("ADODB.RecordSet")
Rs.open "tmpData",Conn,1,3
rs.AddNew()
rs("AddTime")=AddTime(i)
rs("FirstP")=FirstP(i)
rs("SecondP")=SecondP(i)
rs("FirstAdrr")=FirstAdrr(i)
rs("SecondAdrr")=SecondAdrr(i)
rs.Update()
rs.Close()
set rs=nothing
next
Conn.Close()
set Conn=nothing
end function
txtTime=Trim(Request.Form("txTime"))
if txtTime<>"" then
session("dt")=txtTime
end if
if session("dt")<>"" then
readText(session("dt"))
end if
On Error resume Next
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &server.MapPath("tmp.mdb")
If Err.number<>0 Then
Err.Clear
Response.Write("数据库链接错误,请检查数据库链接!")
Response.End()
End If
set Rs=Server.CreateObject("ADODB.RecordSet")
key=trim(Request.Form("key"))
if key<>"" then
sql="select * from tmpData where FirstP='"&key&"' or SecondP='"&key&"'"
else
sql="select * from tmpData"
End If
Rs.open sql,Conn,1,3
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>读取文档演示</title>
<style type="text/css">
<!--
body,td,th {
font-size: 12px;
}
.bg{
background-color:#FCF;
border-bottom:#F90 dotted 1px;
}
.bt{
background:#F60;
border:#ccc solid 1px;
width:45px;
height:22px;
line-height:18px;
}
-->
</style></head>
<body>
<form id="form2" action="Index.asp" method="post">
<table width="624" border="0" align="center" cellpadding="3" cellspacing="0">
<tr>
<td width="314" align="right">输入您要代开的文件日期(如2010-02-26):</td>
<td width="198"><label>
<input name="txTime" type="text" id="txTime" size="25" />
</label></td>
<td width="94"><input name="search2" type="submit" class="bt" id="search2" value="打开" /></td>
</tr>
</table>
</form>
<table width="624" border="0" align="center" cellpadding="4" cellspacing="0">
<tr>
<td width="83" align="center" bgcolor="#CCCCCC">编号</td>
<td width="135" align="center" bgcolor="#CCCCCC">时间</td>
<td width="106" align="center" bgcolor="#CCCCCC">人物</td>
<td width="85" align="center" bgcolor="#CCCCCC">另一个人物</td>
<td width="95" align="center" bgcolor="#CCCCCC">地点</td>
<td width="120" align="center" bgcolor="#CCCCCC">另一地点</td>
</tr>
<%for i=1 to rs.recordCount%>
<tr class="bg">
<td align="center"><%=rs(0)%></td>
<td align="center"><%=rs(1)%></td>
<td align="center"><%=rs(2)%></td>
<td align="center"><%=rs(3)%></td>
<td align="center"><%=rs(4)%></td>
<td align="center"><%=rs(5)%></td>
</tr>
<%
rs.MoveNext()
next%>
</table>
<form id="form1" name="form1" method="post" action="Index.asp">
<table width="624" border="0" align="center" cellpadding="3" cellspacing="0">
<tr>
<td width="165" align="right">输入您要查找的人的姓名:</td>
<td width="289">
<label>
<input name="key" type="text" id="key" size="40" />
</label></td>
<td width="152"><input name="search" type="submit" class="bt" id="search" value="查找" /></td>
</tr>
</table>
</form>
</body>
</html>
<%
sql="drop table tmpData "
rs.Close()
set rs=nothing
Conn.Execute(sql)
Conn.Close()
set Conn = nothing
%>
展开全部
1.
function ReadTextFile(dt)
dim fso, f, filename
filename = year(dt) & "年" & month(dt) & "月" & day(dt) & "日.txt"
set fso = Server.CreateObject("Scripting.FileSystemObject")
set f = fso.OpenTextFile(Server.Mappath(filename))
ReadTextFile = f.ReadAll()
f.Close()
set f = nothing
set fso = nothing
end function
2.
dim str, arr, i, r, html
str = ReadTextFile(Now())
arr = Split(str,vbcrlf)
html = "<table border=1>"
for i = 0 to Ubound(arr)
if Instr(arr(i), "张三") > 1 then
r = split(arr(i), ",")
html = html & "<td>" & Join(r, "</td><td>") & "</td>"
end if
next
html = html & "</table>"
Response.ContentType = "text/html"
Response.Charset = "GB2312"
Response.Write(html)
function ReadTextFile(dt)
dim fso, f, filename
filename = year(dt) & "年" & month(dt) & "月" & day(dt) & "日.txt"
set fso = Server.CreateObject("Scripting.FileSystemObject")
set f = fso.OpenTextFile(Server.Mappath(filename))
ReadTextFile = f.ReadAll()
f.Close()
set f = nothing
set fso = nothing
end function
2.
dim str, arr, i, r, html
str = ReadTextFile(Now())
arr = Split(str,vbcrlf)
html = "<table border=1>"
for i = 0 to Ubound(arr)
if Instr(arr(i), "张三") > 1 then
r = split(arr(i), ",")
html = html & "<td>" & Join(r, "</td><td>") & "</td>"
end if
next
html = html & "</table>"
Response.ContentType = "text/html"
Response.Charset = "GB2312"
Response.Write(html)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
为什么要用TXT,还是这个TXT是其他系统里生成出来的,建议你可以先读取TXT文件,存入数据库中,第二步就是执行一个查询
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
注意编码...
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询