獲取指定路徑下的文件類型及數(shù)量

C#實現(xiàn)指定路徑,掃描該路徑下所有文件,統(tǒng)計文件類型及其對應(yīng)數(shù)量

using System;
using System.Collections.Generic;
using System.IO;

namespace FileExtensionScan
{
    class Program
    {
        Dictionary<String, int> pList = new Dictionary<String, int>(); //字典形式{后綴:數(shù)量}
        int fileNum = 0;
        
        public void GetFileNum(string srcPath)
        {
            try
            {
                // 得到源目錄的文件列表,該里面是包含文件以及目錄路徑的一個數(shù)組
                string[] fileList = System.IO.Directory.GetFileSystemEntries(srcPath);
                // 遍歷所有的文件和目錄
                foreach (string file in fileList)
                {
                    // 先當(dāng)作目錄處理如果存在這個目錄就重新調(diào)用GetFileNum(string srcPath)
                    if (Directory.Exists(file))
                        GetFileNum(file);
                    else
                    {
                        fileNum++;
                        string ext = Path.GetExtension(file).ToLower();
                        if (pList.ContainsKey(ext) == false)
                            pList.Add(ext, 1);
                        else
                            pList[ext]++;
                    }
                }

            }
            catch (Exception e)
            {
                Console.WriteLine(e.ToString());
            }
        }

        static void Main(string[] args)
        {
            Program p = new Program();
            p.GetFileNum(args[0]); //獲取目錄路徑,第一個命令行參數(shù)
            Console.WriteLine("掃描文件數(shù)目" + p.fileNum); //掃描文件總數(shù)

            foreach (var dic in p.pList)
            {
                Console.WriteLine("{0}  {1}", dic.Key, dic.Value);
            }
        }
    }
}

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,500評論 19 139
  • 國家電網(wǎng)公司企業(yè)標(biāo)準(zhǔn)(Q/GDW)- 面向?qū)ο蟮挠秒娦畔?shù)據(jù)交換協(xié)議 - 報批稿:20170802 前言: 排版 ...
    庭說閱讀 12,289評論 6 13
  • linux資料總章2.1 1.0寫的不好抱歉 但是2.0已經(jīng)改了很多 但是錯誤還是無法避免 以后資料會慢慢更新 大...
    數(shù)據(jù)革命閱讀 13,157評論 2 33
  • 我平生最煩的,就是大半夜把我當(dāng)知心姐姐,撥來的那些情感電話。 這并不是因為我不熱衷于答疑解惑,相反,我相當(dāng)熱衷于傾...
    林一芙閱讀 2,389評論 11 49
  • 嗨,大家早上好,今天我們分享的是托管中心這個單詞,用英語怎么說呢? 放學(xué)之后,各個小學(xué)門口會有很多舉著牌子的托管中...
    先鋒外語小軒jenn閱讀 1,005評論 0 0

友情鏈接更多精彩內(nèi)容