算法文神困章,总是带给我们无穷的思考和兴趣,一个问题,多种解决方法,看你如何去思考它,对于标题所引出的指枣'问题,我觉得,使用递归是比较有效的方法,当然递归还有很多使用场合,如树型分类列表的 *** 作等等。
注意:
使用递归时,初学者要特别注意的就是“出口”,必须为递归提供一个出口,否则你的内存就要溢出了,呵呵,memory overflow大唯瞎拆家肯定都见过,都是从那时候过来的,呵呵。
代码中的递归:
复制代码 代码如下:
static void GetFiles(Listarr, 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:softmareFiddler2汉化"
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()
}
创建一个简单的Demo C# Project,演示如果创建日志文件以及如何将日志内容输出文件。原始的文件并没有配置输出日志文件的类型,输出方式。一般设置把日志输出到文本,存放在本机某个路径下。
(1) 设置侍衡一个存放日志文件的路径
例如: <variable name="myLogDirectory" value="C:/MyLogs/"/>
(2)在targets 添加元素,指定日志文件类型以及文件名称
<target xsi:type="File" name="logfile" fileName="${myLogDirectory}App.log"/>
(3)在rules 中添加元素,指定日志级别Level,以及输出到
<logger name="*" minlevel="Debug"卜模 writeTo="logfile"/>
首先添加引用:
using NLog
创建logger对象
private static readonly NLog.Logger logger = NLog.LogManager.GetCurrentClassLogger()
写日老弊做志方式:
logger.Debug("This is a debug message")
logger.Info("This is Info message")
logger.Error("This is a Error message")
日志文件存放路径:
日志内容
2022-05-04 18:12:53.6615|DEBUG|_01_Demo1.Program|This is a debug message
2022-05-04 18:12:53.6960|INFO|_01_Demo1.Program|This is Info message
2022-05-04 18:12:53.6960|ERROR|_01_Demo1.Program|This is a Error message
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)