c#.net 2.0 文件IO之DriveInfo类示例

简介:
2008-03-09 22:07

//program.cs

using System;
using System.Collections.Generic;
using System.Windows.Forms;

namespace DriveInfo_GetDrives
{
    static class Program
    {
        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new Form1());
        }
    }
}

//form1.cs

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;

namespace DriveInfo_GetDrives
{
    public partial class Form1 : Form
    {
        private long m = 0;
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            
        }

        private void Button_GetInfo_Click(object sender, EventArgs e)
        {
            StringBuilder sb = new StringBuilder();//建立stringbuilder对象,用于在内存中存储临时信息
            DriveInfo[] myAllDrives = DriveInfo.GetDrives();// DriveInfo对象数组,存储获得的磁盘信息
            try
            {
                foreach (DriveInfo myDrive in myAllDrives)//循环写入每个磁盘的参数 属性
                {
                    if (myDrive.IsReady)
                    {
                        sb.Append("磁盘驱动器盘符:");
                        sb.AppendLine(myDrive.Name);
                        sb.Append("磁盘卷标:");
                        sb.AppendLine(myDrive.VolumeLabel);
                        sb.Append("磁盘类型:");
                        sb.AppendLine(myDrive.DriveType.ToString());
                        sb.Append("磁盘格式:");
                        sb.AppendLine(myDrive.DriveFormat);
                        sb.Append("磁盘大小:");
                        m = myDrive.TotalSize / (1024 * 1024);
                        sb.AppendLine(m.ToString()+"M");
                        sb.Append("磁盘可用剩余空间:");
                        m = myDrive.AvailableFreeSpace / (1024 * 1024);
                        sb.AppendLine(m.ToString()+"M");
                        sb.Append("磁盘总剩余空间:");
                        m= myDrive.TotalFreeSpace/(1024*1024);
                        sb.AppendLine(m.ToString()+"M");
                        sb.AppendLine("--------------------------------------------------");
                    }
                }
            }
            catch(Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            this.textBox_ShowInfo.Text = sb.ToString();//显示信息
        }
    }
}

 



本文转自悬魂博客园博客,原文链接:http://www.cnblogs.com/xuanhun/archive/2010/02/03/1662410.html,如需转载请自行联系原作者

相关文章
|
29天前
|
Java 物联网 C#
C#/.NET/.NET Core学习路线集合,学习不迷路!
C#/.NET/.NET Core学习路线集合,学习不迷路!
|
2天前
|
开发框架 监控 .NET
C#进阶-ASP.NET WebForms调用ASMX的WebService接口
通过本文的介绍,希望您能深入理解并掌握ASP.NET WebForms中调用ASMX WebService接口的方法和技巧,并在实际项目中灵活运用这些技术,提高开发效率和应用性能。
20 5
|
10天前
|
算法 Java 测试技术
Benchmark.NET:让 C# 测试程序性能变得既酷又简单
Benchmark.NET是一款专为 .NET 平台设计的性能基准测试框架,它可以帮助你测量代码的执行时间、内存使用情况等性能指标。它就像是你代码的 "健身教练",帮助你找到瓶颈,优化性能,让你的应用跑得更快、更稳!希望这个小教程能让你在追求高性能的路上越走越远,享受编程带来的无限乐趣!
53 13
|
27天前
|
Java 测试技术 Maven
Maven clean 提示文件 java.io.IOException
在使用Maven进行项目打包时,遇到了`Failed to delete`错误,尝试手动删除目标文件也失败,提示`java.io.IOException`。经过分析,发现问题是由于`sys-info.log`文件被其他进程占用。解决方法是关闭IDEA和相关Java进程,清理隐藏的Java进程后重新尝试Maven clean操作。最终问题得以解决。总结:遇到此类问题时,可以通过任务管理器清理相关进程或重启电脑来解决。
|
1月前
|
Java 物联网 编译器
C#一分钟浅谈:.NET Core 与 .NET 5 区别
本文对比了 .NET Core 和 .NET 5,从历史背景、主要区别、常见问题及易错点等方面进行了详细分析。.NET Core 侧重跨平台支持和高性能,而 .NET 5 在此基础上统一了 .NET 生态系统,增加了更多新特性和优化。开发者可根据具体需求选择合适的版本。
47 7
|
29天前
|
人工智能 开发框架 前端开发
C#/.NET/.NET Core技术前沿周刊 | 第 12 期(2024年11.01-11.10)
C#/.NET/.NET Core技术前沿周刊 | 第 12 期(2024年11.01-11.10)
|
29天前
|
开发框架 网络协议 .NET
C#/.NET/.NET Core优秀项目和框架2024年10月简报
C#/.NET/.NET Core优秀项目和框架2024年10月简报
|
18天前
|
数据库连接 数据库 C#
Windows下C# 通过ADO.NET方式连接南大通用GBase 8s数据库(上)
Windows下C# 通过ADO.NET方式连接南大通用GBase 8s数据库(上)
|
18天前
|
数据库连接 数据库 C#
Windows下C# 通过ADO.NET方式连接南大通用GBase 8s数据库(下)
本文接续前文,深入讲解了在Windows环境下使用C#和ADO.NET操作南大通用GBase 8s数据库的方法。通过Visual Studio 2022创建项目,添加GBase 8s的DLL引用,并提供了详细的C#代码示例,涵盖数据库连接、表的创建与修改、数据的增删查改等操作,旨在帮助开发者提高数据库管理效率。
|
28天前
|
人工智能 开发框架 安全
C#/.NET/.NET Core技术前沿周刊 | 第 13 期(2024年11.11-11.17)
C#/.NET/.NET Core技术前沿周刊 | 第 13 期(2024年11.11-11.17)

热门文章

最新文章