【问题标题】:Expression denotes a `method group', where a `variable', `value' or `type' was expected表达式表示一个“方法组”,其中需要一个“变量”、“值”或“类型”
【发布时间】:2015-11-10 11:36:36
【问题描述】:

我有一个存储 Unity 项目文件的项目。我想要的是找到这些文件并压缩它们。我想使用ZipFile Class。我的代码很简单如下:

string dataSource = @"D:\\dt\\2015-11-09-11\\";
string zipFile = @"D:\\dt\\2015-11-09-11\\file.zip";
ZipFile.CreateFromDirectory(dataSource, zipFile, CompressionLevel.Fastest, true);

但是我从统一中得到了错误:

Assets/file.cs(54,25):错误 CS0119:表达式表示 method group', where avariable',应为 value' ortype'

我在这里做错了什么?

编辑:这个问题是 ZipFile 类适用于 .NET 4.5 及更高版本,而 unity 适用于 .NET 3.5。我按照以下lib commnets 中的建议更改了我使用的库。我现在的代码如下:

string dataSource = @"D:\\data\\2015-11-09-11-11-37-3286";
FileStream fsOut = File.Create(dataSource);
ZipOutputStream zipStream = new ZipOutputStream(fsOut);
zipStream.SetLevel(3);
int folderOffset = dataSource.Length + (dataSource.EndsWith("\\") ? 0 : 1);
CompressFolder(dataSource, zipStream, folderOffset);        
zipStream.IsStreamOwner = true; // Makes the Close also Close the underlying stream
zipStream.Close();

CompressFolder 方法可以找到here。我收到以下消息(目录是现有路径):

DirectoryNotFoundException:找不到路径“D:\data\2015-11-09-11-11-37-3286”的一部分。 System.IO.FileStream..ctor

问题出在建议代码第二行FileStream out = File.Create(dataSource);

【问题讨论】:

  • ZipFile 可从 .NET 4.5 开始使用……据我所知,Unity 远远落后于此。现在,如果没有更多上下文,很难说出您收到 exact 错误消息的原因。我的猜测是您也有一个名为ZipFile 的方法。很高兴确切知道 file.cs 第 54 行第 25 列的内容...
  • 是的,你是对的,第三行是 CreateFromDirectory。我认为这种情况是 .NET 冲突,因为统一仅支持 3.5。 ZipFile for Unity 的任何替代方案?
  • 您可能想改用 SharpZipLib。
  • 知道如何使用该库吗?我已将 dll 下载并存储到 UNity 项目中的 Assets 中。你知道任何关于如何使用该 dll 的教程吗?
  • 搜索“SharpZipLib 教程”获得了很多点击,并且有很多示例:github.com/icsharpcode/SharpZipLib/wiki/Code-Reference

标签: c# zip


【解决方案1】:

实在不行,我建议你也调用了一个方法ZipFile

将其重命名为不与类名冲突的名称或使用Using alias = ... 声明。

【讨论】:

    【解决方案2】:

    我想我明白了。 Unity 在浏览未知目录时存在问题。当我将目录更改为 Unity 可以访问的文件夹时,一切正常。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多