dotnetcore下解压zip文件,解决中文文件名乱码问题
程序员文章站
2022-03-06 20:52:40
(迄今为止网上那些说的用Encoding.Default解决中文文件名乱码的都不能真正解决问题!) 1、在程序开始处 Encoding.RegisterProvider(CodePagesEncodingProvider.Instance); 2、设置编码为GBK ......
(迄今为止网上那些说的用encoding.default解决中文文件名乱码的都不能真正解决问题!)
1、在程序开始处
encoding.registerprovider(codepagesencodingprovider.instance);
2、设置编码为gbk
class program
{
static void main(string[] args)
{
// 注册代码页提供器实例
encoding.registerprovider(codepagesencodingprovider.instance);
uncompress("a.zip", "x");
}
static void uncompress(string zipfile, string extractpath)
{
// 设置打开的zip文件的编码为gbk
using (var zip = zipfile.open(zipfile, ziparchivemode.read, encoding.getencoding("gbk")))
{
foreach (var entry in zip.entries)
{
system.console.writeline(entry.fullname);
}
zip.extracttodirectory(extractpath, true);
}
}
}