asp如何对文件进行操作?

来源:asp之家 时间:2009-11-20 18:31:00 

 这可是个综合性的问题,看看下面对文件操作的集大成代码:

<% '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="fileops.html"><b>返回</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 %>

标签:文件,操作,fso
0
投稿

猜你喜欢

  • 怎么让按钮更容易被点击

    2007-08-22 09:07:00
  • asp如何验证日期输入是否正确?

    2010-06-10 18:38:00
  • 使用Filter实现信息的二次检索

    2007-10-08 19:19:00
  • JavaScript基础知识篇-你真的了解JavaScript吗?

    2009-09-17 13:00:00
  • Oracle RMAN快速入门指南

    2010-07-18 12:50:00
  • 设计MySQL数据库的技巧

    2009-09-06 11:56:00
  • 新云4.0 模板通用标签说明

    2008-11-20 13:12:00
  • 详解CSS的优先权

    2008-05-11 18:57:00
  • 巧制可全屏拖动的图片

    2008-05-09 19:34:00
  • 认清区别CSS的类class和id

    2007-10-08 12:02:00
  • Data URI小试 —— 在旺旺点灯(JS)上的应用

    2009-10-30 18:28:00
  • 用SQL语句完成SQL Server数据库的修复

    2008-11-24 20:49:00
  • 关于Youtube URL的十个技巧

    2009-04-21 13:19:00
  • asp常用数据库连接方法和技巧

    2010-05-27 12:28:00
  • 解析SQL Server 2008中的新语句:MERGE

    2009-01-13 13:57:00
  • 在oracle 数据库中查看一个sql语句的执行时间和SP2-0027错误

    2009-10-09 13:04:00
  • 动网论坛的asp 数据库连接代码

    2011-04-06 10:32:00
  • 让验证码友好一点

    2007-10-20 13:45:00
  • ASP SCRIPT: 计数器(使用GrapShot组件)

    2008-11-07 15:36:00
  • ASP长文章分页代码实例

    2007-10-02 17:04:00
  • asp之家 网络编程 m.aspxhome.com