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,如需转载请自行联系原作者

相关文章
|
8月前
|
存储 监控 算法
基于 C# 的局域网计算机监控系统文件变更实时监测算法设计与实现研究
本文介绍了一种基于C#语言的局域网文件变更监控算法,通过事件驱动与批处理机制结合,实现高效、低负载的文件系统实时监控。核心内容涵盖监控机制选择(如事件触发机制)、数据结构设计(如监控文件列表、事件队列)及批处理优化策略。文章详细解析了C#实现的核心代码,并提出性能优化与可靠性保障措施,包括批量处理、事件过滤和异步处理等技术。最后,探讨了该算法在企业数据安全监控、文件同步备份等场景的应用潜力,以及未来向智能化扩展的方向,如文件内容分析、智能告警机制和分布式监控架构。
223 3
|
11月前
|
开发框架 安全 .NET
掌握 LINQ:通过示例解释 C# 中强大的 LINQ的集运算
通过本文的示例,我们详细介绍了C#中LINQ的强大集合运算功能。LINQ提供了一种简洁、灵活和类型安全的方式来查询和操作数据集合,从而大大提高了代码的可读性和可维护性。希望本文能帮助读者更好地掌握和应用LINQ,提高开发效率。
308 13
|
9月前
|
SQL 小程序 API
如何运用C#.NET技术快速开发一套掌上医院系统?
本方案基于C#.NET技术快速构建掌上医院系统,结合模块化开发理念与医院信息化需求。核心功能涵盖用户端的预约挂号、在线问诊、报告查询等,以及管理端的排班管理和数据统计。采用.NET Core Web API与uni-app实现前后端分离,支持跨平台小程序开发。数据库选用SQL Server 2012,并通过读写分离与索引优化提升性能。部署方案包括Windows Server与负载均衡设计,确保高可用性。同时针对API差异、数据库老化及高并发等问题制定应对措施,保障系统稳定运行。推荐使用Postman、Redgate等工具辅助开发,提升效率与质量。
369 0
|
开发框架 搜索推荐 算法
一个包含了 50+ C#/.NET编程技巧实战练习教程
一个包含了 50+ C#/.NET编程技巧实战练习教程
379 18
|
JSON 安全 API
.net 自定义日志类
在.NET中,创建自定义日志类有助于更好地管理日志信息。示例展示了如何创建、配置和使用日志记录功能,包括写入日志文件、设置日志级别、格式化消息等。注意事项涵盖时间戳、日志级别、JSON序列化、线程安全、日志格式、文件处理及示例使用。请根据需求调整代码。
217 13
|
缓存 算法 安全
精选10款C#/.NET开发必备类库(含使用教程),工作效率提升利器!
精选10款C#/.NET开发必备类库(含使用教程),工作效率提升利器!
464 12
基于 C# 编写的 Visual Studio 文件编码显示与修改扩展插件
基于 C# 编写的 Visual Studio 文件编码显示与修改扩展插件
233 9
|
开发框架 人工智能 .NET
C#/.NET/.NET Core拾遗补漏合集(24年12月更新)
C#/.NET/.NET Core拾遗补漏合集(24年12月更新)
203 6
|
开发框架 算法 .NET
C#/.NET/.NET Core技术前沿周刊 | 第 15 期(2024年11.25-11.30)
C#/.NET/.NET Core技术前沿周刊 | 第 15 期(2024年11.25-11.30)
215 6
|
开发框架 Cloud Native .NET
C#/.NET/.NET Core技术前沿周刊 | 第 16 期(2024年12.01-12.08)
C#/.NET/.NET Core技术前沿周刊 | 第 16 期(2024年12.01-12.08)
224 6