日期:2010-08-05  浏览次数:21191 次

     接着,下面的这个例题具体就涉及open方法的问题了,还记得?正常情况之下打开文件是采用fso.OpenTextFile("c:\testfile.txt",1),参数1的作用是:以只读模式打开文件。不能对此文件进行写操作。如果现在已经存在一文件,需要进行追加写入,则该怎么办呢?简单,参数为8即可。

    这有什么用呢?呵呵,亚玛逊的网络故事接龙就是如此:能接龙就需要首先要显示原有故事,然后自己添加故事写入文件。这其中的写入文件最讲究的就是追加写入了。所以下面就可以实现。

    二、story.ASP

  <%If not request.Form("NextLine")="" then
  Set fso=Server.CreateObject("Scripting.FileSystemobject")
  textfile1=Server.MapPath("story.txt")
  set cnrs=fso.OpenTextFile(textfile1,8)
  cnrs.WriteLine(Request.Form("NextLine"))
  cnrs.Close
  end if
  %>故事如下:<%
  Set fso=Server.CreateObject("Scripting.FileSystemObject")
  textfile1=Server.MapPath("story.txt")
  set cnrs=fso.OpenTextFile(textfile1,1)
  while not cnrs.AtEndOfStream
  Response.Write " " & cnrs.ReadLinewend
  cnrs.close%>
  <hr>
  <form method="post" action="story.asp">请输入这个故事的新行:
  <input name="NextLine" type="text" size="70">
  <input type="submit" value="提交"></form>

    整个就是一很简单的读取信息和加入信息的混合利用,相信有了前面的基础看懂应该不成问题。当然还缺少个story.txt文件,里面写好故事开头就可以了。

    调试

    再下面,继续来,该侧重点主要就是练习一些函数的使用技巧了。

    1,instr函数:返回某字符串在另一字符串中第一次出现的位置。

    比如现在查找字母“A”在字符串“A110B121C119D1861”中第一次出现的位置,则可以

  <script language=VBs>
  my_string = "A110B121C119D1861"
  a_num = instr(my_string,"A")
  alert(a_num)
  </script>

    同样字母“B”的位置也就能确定。现在就来最关键的:提前字母“A”和“B”中间的值“110”。

    还记得mid函数吗?mid函数的主要作用是:从字符串中返回指定数目的字符。

    比如现在的“110”则应该是从字符串的第2位取得3个单位的值。