C# 獲取磁盤的空間大小


        private void button1_Click(object sender, EventArgs e)
        {
            string strRecordFilePath = "d:/dasda";
            string str=strRecordFilePath.Substring(0, 1).ToUpper();//取首字母並轉為大寫
            this.m_ChkDisk(str);
        }

    //strDisk應為大寫,如 "D"

        private void m_ChkDisk(string strDisk)
        {
            if (strDisk == "")
                return;

            txtTotal.Text = GetHardDiskSpace(strDisk).ToString();
            txtFreeSpace.Text = GetHardDiskFreeSpace(strDisk).ToString();
            int a, b, c;
            a = Convert.ToInt32(txtTotal.Text);
            b = Convert.ToInt32(txtFreeSpace.Text);
            c = a - b;
           
            txtUse.Text=c.ToString();
        }

        ///  <summary>
        /// 獲取指定驅動器的空間總大小(單位為B)
        ///  </summary>
        ///  <param name="str_HardDiskName">只需輸入代表驅動器的字母即可 (大寫)</param>
        ///  <returns> </returns>
        public static long GetHardDiskSpace(string str_HardDiskName)
        {
            long totalSize= new long();
            str_HardDiskName=str_HardDiskName +":\\";
            System.IO.DriveInfo[] drives = System.IO.DriveInfo.GetDrives();
            foreach (System.IO.DriveInfo drive in drives)
            {
                if (drive.Name == str_HardDiskName)
                {
                    totalSize = drive.TotalSize / (1024 * 1024 * 1024);
                }
            }
            return totalSize;
        }

        ///  <summary>
        /// 獲取指定驅動器的剩余空間總大小(單位為B)
        ///  </summary>
        ///  <param name="str_HardDiskName">只需輸入代表驅動器的字母即可 </param>
        ///  <returns> </returns>
        public static long GetHardDiskFreeSpace(string str_HardDiskName)
        {
            long freeSpace = new long();
            str_HardDiskName = str_HardDiskName + ":\\";
            System.IO.DriveInfo[] drives = System.IO.DriveInfo.GetDrives();
            foreach (System.IO.DriveInfo drive in drives)
            {
                if (drive.Name == str_HardDiskName)
                {
                    freeSpace = drive.TotalFreeSpace / (1024 * 1024 * 1024);
                }
            }
            return freeSpace;
        }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM