当前位置:编程学习 > asp >>

如何对文件进行操作?

答案:

<%@ LANGUAGE="VBScript" %>

<% 'Set file i/o constants.
Const ForReading = 1
Const ForWriting = 2
Const ForAppending = 8
filename = "test.txt"
path = Server.MapPath("data") & "\" & filename

' 映射文件名到服务器的物理路径.
operation = Request.Form("operation") %>

' 得到请求操作.
<html>
<head>
<title>
千花飞舞之处理文件</title>
</head>
<body>
<font face="Arial,Helvetica" size=2>

<table bgcolor="#000000" border=0 cellpadding=1 cellspacing=0><tr><td>
<table bgcolor="#008080" border=0 cellpadding=8 cellspacing=0><tr valign=bottom><td>
<font face="Arial,Helvetica" size=2>
<form action="<% = Request.ServerVariables("script_NAME") %>" method="post">
<input name="operation" type="radio" value="create">
创建
<input name="operation" type="radio" value="delete">
删除
<input name="operation" type="radio" value="read" checked>
读取
<input name="operation" type="radio" value="write">
写入
<input name="operation" type="radio" value="append">
添加
<p>
<center>
<input type="submit" value="
确定"> <input type="reset" value="重置">
</center>
</form>
<p>
<a href=>返回</b></a>
</font>
</td></tr></table>
</td></tr></table>
<p>

<%
if operation = "create" then
call CreateFile(path)
call ReadFile(path)
elseif operation = "delete" then
call DeleteFile(path)
elseif operation = "read" then
call ReadFile(path)
elseif operation = "write" then
call WriteFile(path)
call ReadFile(path)
elseif operation = "append" then
call AppendFile(path)
call ReadFile(path)
end if

' 执行请求操作.
%>
<p>
</font>
</body></html>

<% sub CreateFile(path)
dim fs, file
set fs = CreateObject("Scripting.FileSystemObject")
if fs.FileExists(path) then
Response.Write(<b>
,文件" & filename & " 已经存在,创建失败!</b><br>" & vbCrLf)

' 如果文件早已存在则显示一个错误信息
else
Response.Write(
恭喜, " & filename & "创建成功!<br>" & vbCrLf)

' 否则创建它并写入数据
set file = fs.CreateTextFile(path)
Response.Write(
" & filename & "写入数据...<br>" & vbCrLf)
file.WriteLine("Line 1 added " & Now() & ".")
file.WriteLine("Line 2 added " & Now() & ".")
file.WriteLine("Line 3 added " & Now() & ".")
file.WriteLine("Line 4 added " & Now() & ".")
file.WriteLine("Line 5 added " & Now() & ".")
file.Close()
end if
end sub
sub DeleteFile(path)
dim fs, file
set fs = CreateObject("Scripting.FileSystemObject")
if not fs.FileExists(path) then

' 如果文件不存在则显示一个错误信息.
Response.Write(<b>
,文件" & filename & "不存在,您删除什么!</b><br>" & vbCrLf)
else
Response.Write(
恭喜," & filename & "删除成功!<br>" & vbCrLf)

' 否则删除它.
fs.DeleteFile(path)
end if
end sub
sub ReadFile(path)
dim fs, file
set fs = CreateObject("Scripting.FileSystemObject")
if not fs.FileExists(path) then
Response.Write(<b>
,文件" & filename & "不存在,您读取什么!</b><br>" & vbCrLf)
'
如果文件不存在则显示一个错误信息.

else
set file = fs.OpenTextFile(path, ForReading)
Response.Write(
恭喜," & filename & "读取成功!" & vbCrLf)

' 否则打开它并显示内容.
Response.Write("<p>" & vbCrLf)
Response.Write("<hr size=1>" & vbCrLf)
Response.Write("<font size=3><pre>" & vbCrLf)
do while not file.AtEndOfStream
Response.Write(file.ReadLine & vbCrLf)
loop
Response.Write("</pre></font>" & vbCrLf)
Response.Write("<hr size=1>" & vbCrLf)
file.Close()
end if
end sub
sub WriteFile(path)
dim fs, file
set fs = CreateObject("Scripting.FileSystemObject")
if not fs.FileExists(path) then
Response.Write(<b>
,文件" & filename & "不存在,您写入什么!</b><br>" & vbCrLf)

' 如果文件不存在则显示一个错误信息.

else
set file = fs.OpenTextFile(path, ForWriting)

' 否则,改写内容.
Response.Write(Rewriting file " & filename & ".<br>" & vbCrLf)
file.WriteLine("Rewritting file with line 1 added " & Now() & ".")
file.WriteLine("Rewritting file with line 2 added " & Now() & ".")
file.WriteLine("Rewritting file with line 3 added " & Now() & ".")
file.Close()
end if

end sub

sub AppendFile(path)

dim fs, file

set fs = CreateObject("Scripting.FileSystemObject")

if fs.FileExists(path) then
set file = fs.GetFile(path)
if file.size > 500 then

' 如果文件存在,检查它的大小并退出,如果它超过500K.
Response.Write(<b>
,文件" & filename & "超过了大小限制, 添加失败!</b><br>" &
vbCrLf)
exit sub
end if

else
Response.Write(
,文件" & filename & "不存在!但它将会被创建...<br>" & vbCrLf)
end if
'
如果文件不存在,显示一个提示信息.

Response.Write(
添加内容到文件" & filename & "...<br>" & vbCrLf)
set file = fs.OpenTextFile(path, ForAppending, true)
file.WriteLine("
添加的新内容:" & Now() & ".")

' 当需要给它添加新内容时打开或创建文件
file.Close()

end sub %>


[1]

上一个:如何上传一个单纯的HTML文件?
下一个:如何一行行地读取文件?

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,