【问题标题】:Releasing resources - artwork tag of TagLib file释放资源 - TagLib 文件的艺术品标签
【发布时间】:2011-12-08 01:01:46
【问题描述】:

在我的 C# 应用程序中,我正在为 mp3 文件创建标签。为此,我使用 TagLib 库/扩展。

其中一个标签是艺术品。我可以使用以下方法成功地将艺术品添加到 mp3 的标签中:

TagLib.File f = TagLib.File.Create(path);
IPicture[] pictures = new IPicture[1];
pictures[0] = new Picture(artwork);
f.Tag.Pictures = pictures;

path 是 mp3 的完整路径,artwork 是艺术作品的完整路径。

分配给图片标签后,我使用:

f.Save();
f.Dispose();

现在,将图稿文件移动到计算机上的另一个位置也符合我的兴趣。

为此我使用:

File.Move(pathArtOrig, pathArtNew);

pathArtOrig 是图稿文件的当前完整路径,pathArtNew 是要移动到的完整路径。

问题是我收到以下错误:

IOException 未处理。该进程无法访问该文件,因为 它正被另一个进程使用。

我根本不知道要“释放”所使用的艺术品文件的资源(它可能是 .jpg 文件)。如您所见,我尝试使用上面的 Dispose(),但这并没有成功。

感谢任何帮助。

【问题讨论】:

    标签: c# resources tags taglib artwork


    【解决方案1】:

    抱歉,好像是我自己发现了错误。

    在我的代码中,在创建标签之前,我将文件加载到图片框中。它存储在位图中。

    现在我在创建标签之前 Dispose() 这个位图,一切都很好。现在可以移动文件了。

    【讨论】:

      猜你喜欢
      • 2023-04-10
      • 1970-01-01
      • 2011-09-26
      • 1970-01-01
      • 1970-01-01
      • 2013-06-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多