我在Zip中使用 Unicode名称的文件有问题。我正在使用vjslib.dll。在正常情况下,它可以正常工作,但是当我尝试压缩具有Unicode字符名称如“ サンプルファイル.pdf ”的文件时,它表示为“ ??????”。 ?.pdf ”,同时提取一个zip文件中的Unicode文件名nane表示为“ _______。pdf ” 有没有什么方法可以使用文件的确切名称生成zip文件,而不用英语或其他语言的文件名
zipFileName =“ c:\ SampleZip \ myfile.zip”
sourceFile
c:\ sample \отличается.xml
private void Zip(string zipFileName, string[] sourceFile)
{
FileOutputStream filOpStrm = new FileOutputStream(zipFileName);
ZipOutputStream zipOpStrm = new ZipOutputStream(filOpStrm);
FileInputStream filIpStrm = null;
foreach (string strFilName in sourceFile)
{
filIpStrm = new FileInputStream(strFilName);
ZipEntry ze = new ZipEntry(Path.GetFileName(strFilName));
zipOpStrm.putNextEntry(ze);
sbyte[] buffer = new sbyte[1024];
int len = 0;
while ((len = filIpStrm.read(buffer)) >= 0)
{
zipOpStrm.write(buffer, 0, len);
}
}
zipOpStrm.closeEntry();
filIpStrm.close();
zipOpStrm.close();
filOpStrm.close();
}