ASP.NET Tutorial/File Directory/DriveInfo
Содержание
Displaying local drive information (C#)
<source lang="csharp">
<%@ Page Language="C#" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server">
protected void Page_Load(object sender, EventArgs e) { System.IO.DriveInfo drive = new System.IO.DriveInfo(@"C:\"); lblDriveName.Text = drive.Name; lblDriveType.Text = drive.DriveType.ToString(); lblAvailableFreeSpace.Text = drive.AvailableFreeSpace.ToString(); lblDriveFormat.Text = drive.DriveFormat; lblTotalFreeSpace.Text = drive.TotalFreeSpace.ToString(); lblTotalSize.Text = drive.TotalSize.ToString(); lblVolumeLabel.Text = drive.VolumeLabel; }
</script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server">
<title>Untitled Page</title>
</head> <body>
<form id="form1" runat="server">
Drive Name: |
<asp:Label ID="lblDriveName" runat="server" Text="Label" /> |
Drive Type: |
<asp:Label ID="lblDriveType" runat="server" Text="Label"/> |
Available Free Space: |
<asp:Label ID="lblAvailableFreeSpace" runat="server" Text="Label" /> |
Drive Format: |
<asp:Label ID="lblDriveFormat" runat="server" Text="Label" /> |
Total Free Space: |
<asp:Label ID="lblTotalFreeSpace" runat="server" Text="Label" /> |
Total Size: |
<asp:Label ID="lblTotalSize" runat="server" Text="Label" /> |
Volume Label |
<asp:Label ID="lblVolumeLabel" runat="server" Text="Label" /> |
</form>
</body> </html></source>
Displaying local drive information (VB)
<source lang="csharp">
<%@ Page Language="VB" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server">
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Dim drive As New System.IO.DriveInfo("C:\") lblDriveName.Text = drive.Name lblDriveType.Text = drive.DriveType.ToString() lblAvailableFreeSpace.Text = drive.AvailableFreeSpace.ToString() lblDriveFormat.Text = drive.DriveFormat lblTotalFreeSpace.Text = drive.TotalFreeSpace.ToString() lblTotalSize.Text = drive.TotalSize.ToString() lblVolumeLabel.Text = drive.VolumeLabel End Sub
</script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server">
<title>Untitled Page</title>
</head> <body>
<form id="form1" runat="server">
Drive Name: |
<asp:Label ID="lblDriveName" runat="server" Text="Label" /> |
Drive Type: |
<asp:Label ID="lblDriveType" runat="server" Text="Label"/> |
Available Free Space: |
<asp:Label ID="lblAvailableFreeSpace" runat="server" Text="Label" /> |
Drive Format: |
<asp:Label ID="lblDriveFormat" runat="server" Text="Label" /> |
Total Free Space: |
<asp:Label ID="lblTotalFreeSpace" runat="server" Text="Label" /> |
Total Size: |
<asp:Label ID="lblTotalSize" runat="server" Text="Label" /> |
Volume Label |
<asp:Label ID="lblVolumeLabel" runat="server" Text="Label" /> |
</form>
</body> </html></source>
Enumerating file system directories (C#)
<source lang="csharp">
<%@ Page Language="C#" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server">
protected void Page_Load(object sender, EventArgs e) { foreach (System.IO.DriveInfo drive in System.IO.DriveInfo.GetDrives()) { TreeNode node = new TreeNode(); node.Value = drive.Name; if (drive.IsReady) { node.Text = drive.Name + " - (free space: " + drive.AvailableFreeSpace + ")"; LoadDirectories(node, drive.Name); } else node.Text = drive.Name + " - (not ready)"; this.TreeView1.Nodes.Add(node); } } private void LoadDirectories(TreeNode parent, string path) { System.IO.DirectoryInfo directory = new System.IO.DirectoryInfo(path); try { foreach (System.IO.DirectoryInfo d in directory.GetDirectories()) { TreeNode node = new TreeNode(d.Name, d.FullName); parent.ChildNodes.Add(node); LoadDirectories(node, d.FullName); } } catch (System.UnauthorizedAccessException e) { parent.Text += " (Access Denied)"; } catch (System.IO.IOException e) { parent.Text += " (Unknown Error: " + e.Message + ")"; } }
</script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server">
<title>Untitled Page</title>
</head> <body>
<form id="form1" runat="server">
<asp:TreeView ID="TreeView1" runat="server"></asp:TreeView> |
</form>
</body> </html></source>
Enumerating file system directories (VB)
<source lang="csharp">
<%@ Page Language="VB" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
For Each drive As System.IO.DriveInfo In System.IO.DriveInfo.GetDrives() Dim node As TreeNode = New TreeNode() node.Value = drive.Name If (drive.IsReady) Then node.Text = drive.Name & " - (free space: " & drive.AvailableFreeSpace & ")" LoadDirectories(node, drive.Name) Else node.Text = drive.Name & " - (not ready)" End If Me.TreeView1.Nodes.Add(node) Next End Sub Private Sub LoadDirectories(ByVal parent As TreeNode, ByVal path As String) Dim directory As System.IO.DirectoryInfo = _ New System.IO.DirectoryInfo(path) Try For Each d As System.IO.DirectoryInfo In directory.GetDirectories() Dim node As TreeNode = New TreeNode(d.Name, d.FullName) parent.ChildNodes.Add(node) "Recurse the current directory LoadDirectories(node, d.FullName) Next Catch ex As System.UnauthorizedAccessException parent.Text += " (Access Denied)" Catch ex As System.IO.IOException parent.Text += " (Unknown Error: " + ex.Message + ")" End Try End Sub
</script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server">
<title>Untitled Page</title>
</head> <body>
<form id="form1" runat="server">
<asp:TreeView ID="TreeView1" runat="server"></asp:TreeView> |
</form>
</body> </html></source>
Enumerating through local file system drives (C#)
<source lang="csharp">
<%@ Page Language="C#" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server">
protected void Page_Load(object sender, EventArgs e) { foreach (System.IO.DriveInfo drive in System.IO.DriveInfo.GetDrives()) { TreeNode node = new TreeNode(); node.Value = drive.Name; if (drive.IsReady) { node.Text = drive.Name + " - (free space: " + drive.AvailableFreeSpace + ")"; } else node.Text = drive.Name + " - (not ready)"; this.TreeView1.Nodes.Add(node); } }
</script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server">
<title>Untitled Page</title>
</head> <body>
<form id="form1" runat="server">
<asp:TreeView ID="TreeView1" runat="server"></asp:TreeView> |
</form>
</body> </html></source>
Enumerating through local file system drives (VB)
<source lang="csharp">
<%@ Page Language="VB" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server">
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) For Each drive As System.IO.DriveInfo In System.IO.DriveInfo.GetDrives() Dim node As TreeNode = New TreeNode() node.Value = drive.Name If (drive.IsReady) Then node.Text = drive.Name & _ " - (free space: " & drive.AvailableFreeSpace & ")" Else node.Text = drive.Name & " - (not ready)" End If Me.TreeView1.Nodes.Add(node) Next End Sub
</script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server">
<title>Untitled Page</title>
</head> <body>
<form id="form1" runat="server">
<asp:TreeView ID="TreeView1" runat="server"></asp:TreeView> |
</form>
</body> </html></source>