在ASP.NET中獲取文件屬性(Retrieving File Information In ASP.NET) By Steven Smith
使用ASP.NET我們可以很容易的得到文件的相關信息,包括:文件名、路徑、擴展名、大小和創建以及使用日期等。下面,我們就通過一段代碼看看如何取得文件的相關信息。
如果我們使用典型的ASP來獲取文件信息,它必須使用.FileSystemObjiect腳本對象來查詢文件的有關信息。但在ASP.NET中,.FileSystemObject被System.IO 名稱空間取代了,在.System.IO中,它包含了很多獲取文件系統信息的類。其中的一個類就是FileInfo,它里面有我們在任何時候都想知道的關于文件的信息。使用這個類(原文使用的是Object),我們可以完全得到文件的許多信息(在這里,我們使用文件自身)。并且使用FileInfo還可以完成對文件的其他一些操作,比如備份、重命名等。
按照慣例,我們先看代碼:
fileinfo.aspx <%@ Page Language="c#" %> <script runat="server">
protected System.IO.FileInfo objFI; protected String filename;
protected void Page_Load(){ if(!IsPostBack){ // 取得文件路徑 filename = Request.ServerVariables["PATH_TRANSLATED"];
// 創建objFI對象 objFI = new System.IO.FileInfo(filename);
// 文件信息 fullname.Text = objFI.FullName; name.Text = objFI.Name; size.Text = objFI.Length.ToString(); created.Text = objFI.CreationTime.ToString(); accessed.Text = objFI.LastAccessTime.ToString(); modified.Text = objFI.LastWriteTime.ToString(); directory.Text = objFI.DirectoryName; extension.Text = objFI.Extension; } } </script> <HTML> <HEAD> <link type="text/css" rel="stylesheet" href="http://aspalliance.com/stevesmith/include/ss.css" /></head> </HEAD> <BODY> <form runat="server"> <b>File Information</b> <table class="articlelist"> <tr> <td class="header">Full Name</td> <td> <asp:Label id="fullname" runat="server"/> </td> </tr> <tr> <td class="header">Name</td> <td> <asp:Label id="name" runat="server"/> </td> </tr> <tr> <td class="header">Extension</td> <td> <asp:Label id="extension" runat="server"/> </td> </tr> <tr> <td class="header">Size</td> <td> <asp:Label id="size" runat="server"/> </td> </tr> <tr> <td class="header">Created</td> <td> <asp:Label id="created" runat="server"/> </td> </tr> <tr> <td class="header">Modified</td> <td> <asp:Label id="modified" runat="server"/> </td> </tr> <tr> <td class="header">Accessed</td> <td> <asp:Label id="accessed" runat="server"/> </td> </tr> <tr> <td class="header">Parent Folder</td> <td> <asp:Label id="directory" runat="server"/> </td> </tr>
</form> </BODY> </HTML>
這段代碼非常的淺顯,大家很容易就能看明白。首先我們將文件(fileinfo.aspx)的路徑賦給變量filename,下一步創建objFI對象,取得我們需要的各屬性。通過以上操作,FileInfo類的所有公共屬性就可被我們操作了,主要包括以下屬性: 創建日期,路徑,擴展名,全名,最后訪問時間,修改時間,大小(bytes),文件名 這樣,我們就可以把文件的屬性賦給Label控件的Text,把他們顯示出來。
翻譯
|