2024年4月5日发(作者:)
ASP 在线文本编辑器
在上个练习中我们制作了一个资源管理器,运行后可对程序所在目录中的文件
和文件夹进行浏览、新建和删除操作。本次练习以此为基础进行扩展,完成一个简
单的在线文本编辑器。即在资源管理器的文件列表中单击链接,然后在进入的页面
中对文本中的内容进行修改,最后并保存。
按照下列步骤来完成最终实例:
(1)打开“资源管理器”实例中的文件,找到显示文件名称的代
码“<%=%>”,将其修改为如下的代码:
(2)保存文件,上一步为文件名称添加了超链接,单击之后将转
向文件并指定file为要编辑的文本名称。在同一目录中以为命名创
建一个文件。
(3)作为编辑器,显示正在编辑的文件名称是很必要的。如下所示为在Edit.
asp文件中接收传递file值显示文件名称的代码,其中还提供了一个“关
闭窗口”链接。
文件名称: <% sFile=tring("File") (sFile) %> |
|
width="144" align="left" > class="STYLE3" >关闭窗口
(4)除了显示文件名,另一个重要的功能就是显示文件中的内容。这里要注
意,显示内容的位置同时也是编辑文件所在位置,这就要求内容是可读写的。如下
所示是定义好的表单代码,它包含一个多行文本域即可以显示也可以编辑文件内
容。
(5)在表单中有一“保存”按钮,单击它将触发表单的提交事件,将多行文
本域中的内容提交到文件处理,该文件也是它自身,因此也可称为自提交。
提交的方式为post,这就要求在处理时使用来获取内容。如下所示为
完成这些操作所需的ASP代码:
<%
Set fso = Object("stemObject")
action=tring("action")
Set ts = xtFile (h (sFile) , 1)
'如果是保存
If Action="save" then
Set ts = TextFile (h (sFile), 1)
("FileContent")
Set ts = xtFile (h (sFile) , 1)
PutMsg( "文件保存成功!")
end if
%>
(6)在上述的核心代码中,创建了FileSystemObject对象的实例fso,并通过
OpenTextFile或CreateTextFile方法创建TextStream对象的实例ts。使用之后,添加
如下代码释放内存。
<%
%>
Set fso = Nothing
Set ts = Nothing
(7)保存成功后会以对话框形式弹出,如图4-6所示为编辑文件的效
果。
图4-6 编辑文件效果
(8)如图4-6所示,在页面右侧列出了当前目录下的文件,如果单击文件名链
接可直接在页面中编辑其内容,读者可以根据上次练习独立完成。
(9)至此,最终实例就制作完成了。在最后介绍一下思路:首先读取用户所
选文件的文件名,然后使用FileSystemObject对象的OpenTextFile打开所选的文件,
并使用TextStream对象的ReadAll方法读取文件内容并将其显示在一个窗口中,在
用户编辑过文件内容之后,使用FileSystemObject对象的CreateTextFile方法以可覆
盖的模式创建一个同名文件,然后使用TextStream对象的Write方法将用户更新后
的文件内容写入新创建的文件中。这样,就实现了文件的保存。
发布评论