將文件夾下所有文件輸出到日志文件中 c#遞歸算法學(xué)習(xí)示例
算法文章,總是帶給我們無窮的思考和興趣,一個問題,多種解決方法,看你如何去思考它,對于標(biāo)題所引出的問題,我覺得,使用遞歸是比較有效的方法,當(dāng)然遞歸還有很多使用場合,如樹型分類列表的操作等等。
注意:
使用遞歸時,初學(xué)者要特別注意的就是“出口”,必須為遞歸提供一個出口,否則你的內(nèi)存就要溢出了,呵呵,memory overflow大家肯定都見過,都是從那時候過來的,呵呵。
代碼中的遞歸:
static void GetFiles(List<string> arr, string dir)
{
arr.AddRange(Directory.GetFiles(dir));
var subDir = Directory.GetDirectories(dir).ToList();
if (subDir != null && subDir.Count > 0)
subDir.ForEach(j =>
{
GetFiles(arr, j);
});
}
程序入口
static void Main(string[] args)
{
string path = "F:\\softmare\\Fiddler2漢化";
var obj = FileSync(path);
using (System.IO.StreamWriter srFile = new System.IO.StreamWriter(path + "\\filelist.txt"))
{
obj.ForEach(i =>
{
srFile.WriteLine(i);
});
}
Console.WriteLine("填充完成");
Console.ReadKey();
}
相關(guān)文章
在C#中調(diào)用VBScript、javascript等腳本的實現(xiàn)代碼
在C#中調(diào)用VBScript、javascript等腳本的實現(xiàn)步驟,需要的朋友可以參考下。2009-11-11Dynamic和Var的區(qū)別及dynamic使用詳解
C#中的很多關(guān)鍵詞用法比較容易混淆,var和dynamic就是其中一組,他們都可以申明動態(tài)類型的變量,但是本質(zhì)上他們還是有不少區(qū)別的,下面通過本文給大家介紹Dynamic和Var的區(qū)別及如何正確使用dynamic,需要的朋友參考下2016-01-01C#使用RabbitMq隊列(Sample,Work,Fanout,Direct等模式的簡單使用)
這篇文章主要介紹了C#使用RabbitMq隊列(Sample,Work,Fanout,Direct等模式的簡單使用),本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-10-10C#實現(xiàn)Winform中打開網(wǎng)頁頁面的方法
這篇文章主要介紹了C#實現(xiàn)Winform中打開網(wǎng)頁頁面的方法,涉及WinForm中WebBrowser的相關(guān)使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-08-08C# List<T> Contains<T>()的用法小結(jié)
本篇文章主要是對C#中List<T> Contains<T>()的用法進行了總結(jié)介紹,需要的朋友可以過來參考下,希望對大家有所幫助2014-01-01