gpt4 book ai didi

c# - 压缩 Log4net 输出文件

转载 作者:太空宇宙 更新时间:2023-11-03 16:10:17 25 4
gpt4 key购买 nike

一旦 log4net RollingFileAppender 关闭一个文件,如何将它压缩为 zip(并给它一个密码)?

如果需要自定义 appender,哪个虚方法可以处理这个?

最佳答案

由于 .NET 中的 Zip 函数不支持密码压缩,因此您可以使用类似 DotNetZip 的函数

看看这个答案: https://stackoverflow.com/a/1643348/958701

更新了例子

您可以通过执行以下操作来获取日志文件路径:

appenderFilePath = ((Hierarchy)LogManager.GetRepository()).Root.Appenders.OfType<RollingFileAppender>().FirstOrDefault();

这只返回集合中的第一个 appender。因此,如果您有多个 appender,则删除 FirstOrDefault(),您将获得所有 appender。

然后您应该可以使用 DotNetZip 压缩文件:

using (var zip = new ZipFile())
{
zip.Password = "VerySecret!!";
zip.AddFile(appenderFilePath);
zip.Save("logs.zip");
}

关于c# - 压缩 Log4net 输出文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17715373/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com