手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网络编程>Asp编程>列表

FSO组件之文件操作

来源:互联网 作者:west263.com 时间:2008-02-23
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

<input type="radio" name="website" value="A" checked> cnbruce.com<br>
<input type="radio" name="website" value="B"> blueidea.com<br>
<input type="radio" name="website" value="C"> it365cn.com<br>
<input type="radio" name="website" value="D"> 5d.cn<br>
<input type="submit">
<input type="reset">

  2,接受表单页值的result.asp


<%
whichfile=server.mappath("site.txt")
set fso=createobject("Scripting.FileSystemObject")
set thisfile=fso.opentextfile(whichfile)
my_string=thisfile.readline

a_num = instr(my_string,"A")
b_num = instr(my_string,"B")
c_num = instr(my_string,"C")
d_num = instr(my_string,"D")
total_num = len(my_string)

a_value = mid(my_string,a_num 1,b_num-a_num-1)
b_value = mid(my_string,b_num 1,c_num-b_num-1)
c_value = mid(my_string,c_num 1,d_num-c_num-1)
d_value = mid(my_string,d_num 1,total_num-d_num)

select case request.form("website")
case "A": a_value=a_value 1
case "B": b_value=b_value 1
case "C": c_value=c_value 1
case "D": d_value=d_value 1
end select

mynew_string="A" & cstr(a_value) & "B" & cstr(b_value) & "C"

& cstr(c_value) & "D" & cstr(d_value)
set newfile=fso.createtextfile(whichfile)
newfile.writeLine(mynew_string)
newfile.close
set fso=nothing
%>
当前投票:<br>
cnbruce.com:<%=a_value%><br>
blueidea.com:<%=b_value%><br>
it356cn.com:<%=c_value%><br>
5d.cn:<%=d_value%><br>
<a href="website.html">返回继续</a>

  有了上面函数的基础,看这个应该不是很难的。

  3,最后不要忘了的记数文件site.txt

  格式:A1B1C1D1

  调试

  OK,三个文件就可以胜任一个很简单的投票系统了,如果要加强,

需要细化的则结合以前的知识吧,比如投过一次后设置session或者cookies,

当再次投票时候判断如果session或者cookies存在则不允许,也就是简单的投票防作

假手段了……当然更多的还是要自己去想去实践了。

一,fso.GetFile
  提取文件相应的 File 对象

  1,getfile.asp


<%
whichfile=Server.MapPath("cnbruce.txt")
Set fso = CreateObject("Scripting.FileSystemObject")
Set f1 = fso.CreateTextFile(whichfile,true)
f1.Write ("This is a test.My Name is cnbruce.")
f1.Close
Set f2 = fso.GetFile(whichfile)

s = "文件名称:" & f2.name & "<br>"
s = s & "文件短路径名:" & f2.shortPath & "<br>"
s = s & "文件物理地址:" & f2.Path & "<br>"
s = s & "文件属性:" & f2.Attributes & "<br>"
s = s & "文件大小: " & f2.size & "<br>"
s = s & "文件类型: " & f2.type & "<br>"
s = s & "文件创建时间: " & f2.DateCreated & "<br>"
s = s & "最近访问时间: " & f2.DateLastAccessed & "<br>"
s = s & "最近修改时间: " & f2.DateLastModified
response.write(s)
%>

  其效果正如右键某文件,看到的具体属性信息。
  其中Attributes返回的数值“32”表示:(Archive)上次备份后已更改的文件。可读写。

  其它值附录如下:


Normal 0 普通文件。 没有设置任何属性。
ReadOnly 1 只读文件。 可读写。
Hidden 2 隐藏文件。 可读写。
System 4 系统文件。 可读写。
Directory 16 文件夹或目录。 只读。
Archive 32 上次备份后已更改的文件。 可读写。
Alias 1024 链接或快捷方式。 只读。
Compressed 2048 压缩文件。 只读。

  二,file.move
  作用将指定的文件或文件夹从某位置移动到另一位置。其实该方法仍然属于

fso.GetFile后的一个应用。

  2,movefile.asp


<%
whichfile=Server.MapPath("cnbruce.txt")
Set fso = CreateObject("Scripting.FileSystemObject")
Set f1 = fso.CreateTextFile(whichfile,true)
f1.Write ("This is a test.My Name is cnbruce.")
f1.Close
Set f2 = fso.GetFile(whichfile)
f2.Move "C:\"
%>
<a href="C:\">查看下有没有</a>


  简单的剪切粘贴的功能实现。

  三,File.Copy
  同样属于fso.GetFile后的一个应用。就只是单纯地拷贝文件到某位置。

  3,copyfile.asp


<%
whichfile=Server.MapPath("cnbruce.txt")
Set fso = CreateObject("Scripting.FileSystemObject")
Set f1 = fso.CreateTextFile(whichfile,true)
f1.Write ("This is a test.My Name is cnbruce.")
f1.Close
Set f2 = fso.GetFile(whichfile)
f2.Copy "D:\"
%>
<a href="D:\">查看下有没有</a>

  和本ASP页面同在目录下的cnbruce.txt文件依然存在。

  四,file.Delete
  很显然,就是直接删除文件了。

  4,delfile.asp


<%
whichfile=Server.MapPath("cnbruce.txt")
Set fso = CreateObject("Scripting.FileSystemObject")
Set f1 = fso.CreateTextFile(whichfile,true)
f1.Write ("This is a test.My Name is cnbruce.")
f1.Close
Set f2 = fso.GetFile(whichfile)
f2.move "d:\"

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!