基于B/S结构的信息管理系统中,一般要比普通的网站有更多的技术要求,比如OA系统等。这些系统往往需要直接对系统文件进行操作,比如文件目录的浏览和增删操作、文件的增删操作等。ASP.NET为程序员们提供了丰富的文件操作接口,根据提供的接口可以高效地实现需求中的功能。
ASP.NET中的文件操作主要应用了System.IO命名空间中的几个类:Directory类、file类、StreamReader类等。我们知道,在进行Web方式的系统文件操作时候,像进行数据库的数据操作一样,在进行文件操作之前,必须确保有必要的文件操作权限。
10.1 目录的操作
10.1.1 目录创建和删除
使用ASP.NET程序来管理文件或目录有多种方法,比如Directory.CreateDirectory,DirectoryInfo.Create等方法来创建一个目录,这里我们使用Directory类的CreateDircetory方法来创建一个目录。
使用Visual Studio.net 2003来创建一个Web 应用程序命名为FilesCon,新建一个窗体,命名为DirCon_Sample1.aspx,并添加两个Button控件。DirCon_Sample1.aspx主要HTML代码如下:
<form id="Form1" method="post" runat="server"> <FONT face="宋体"> <asp:Button id="Button1" runat="server" Text="新建Testfolder目录" Width="120px" Height="32px"> </asp:Button> <asp:Button id="Button2" runat="server" Text="删除Testfolder目录" Width="113px" Height="32px"> </asp:Button> </FONT> </form> DirCon_Sample1.aspx.vb中的逻辑代码如下: ‘-------code begin----- Imports System.IO Imports System.IO.Directory Imports System.Web.UI Public Class WebForm1 Inherits System.Web.UI.Page #Region " Web 窗体设计器生成的代码 " ‘此处省略了窗体设计器生成的代码 #End Region Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load ‘在此处放置初始化页的用户代码 End Sub ‘新建目录过程 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click ‘声明Directory类 Dim dircre As System.IO.Directory ‘声明文件目录的路径,改路径为物理绝对路径 Dim dir As String = Server.MapPath(".") + "\Testfolder\" Try ‘判断该文件目录是否存在 If Not dircre.Exists(dir) Then ‘利用Directory类的CreateDirectory方法创建该目录 dircre.CreateDirectory(dir) ‘弹出对话框,提示创建成功! Response.Write("<script> alert(‘Testfolder目录已经成功创建!‘);</script>") Else Response.Write("<script> alert(‘Testfolder目录已经存在!‘);</script>") End If Catch ex As Exception Response.Write("程序执行出,信息描述如下:<br>" & ex.Message) End Try
End Sub ‘删除目录过程 Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click ‘声明Directory类 Dim dircre As System.IO.Directory ‘声明文件目录的路径,改路径为物理绝对路径 Dim dir As String = Server.MapPath(".") + "\Testfolder\" Try ‘判断该文件目录是否存在 If dircre.Exists(dir) Then ‘利用Directory类的CreateDirectory方法删除该目录 ‘ Directory类的Delete方法只能删除空目录,当该目录内有文件时,删除就会出错! dircre.Delete(dir) ‘ dircre.CreateDirectory(dir) ‘弹出对话框,提示创建成功! Response.Write("<script> alert(‘Testfolder目录已经成功删除!‘);</script>") Else Response.Write("<script> alert(‘Testfolder目录不存在!‘);</script>") End If Catch ex As Exception Response.Write("程序执行出,信息描述如下:<br>" & ex.Message) End Try End Sub End Class ‘-------code end-----
保存编译后,DirCon_Sample1.aspx的运行结果如图10.1所示。
 图10.1
在单击按钮【新建Testfolder目录】后,在FilesCon目录下,就会新建一个名为“Testfolder”的目录,单击按钮【删除Testfolder目录】后,如果“Testfolder”不为空的情况下,就可以实现对该目录的删除。
作者:李宗民 来源:IT168 (责任编辑:webjx
|