-1
我有过一组文件夹的浏览,并试图设置ID3TAG性质的小控制台应用程序。TAGLIB - 类型“System.StackOverflowException”未处理的异常出现在mscorlib.dll
ScrPathn专辑和艺术家是字符串常量。
static void Main(string[] args)
{
List<string> dirs = new List<string>(Directory.EnumerateDirectories(SrcPath));
foreach (var dir in dirs)
{
string ParentDirOfFile = dir.Substring(dir.LastIndexOf("\\") + 1);
List<string> files = new List<string>(Directory.EnumerateFiles(dir));
foreach (var file in files)
{
string filename = Path.GetFileName(file);
string destfile = Path.Combine(SrcPath, ParentDirOfFile + "_" + filename);
var fs = new FileStream(destfile, FileMode.Open);
using (var tagFile = TL.File.Create(new TL.StreamFileAbstraction(destfile, fs, fs)))
{
tagFile.Tag.Album = Album;
tagFile.Tag.Title = Path.GetFileNameWithoutExtension(destfile);
tagFile.Tag.AlbumArtists = new string[] { Artist };
tagFile.Save();
}
}
}
Console.ReadLine();
}
在保存步我得到:
System.StackOverflowException了未处理 消息:类型System.StackOverflowException“未处理的异常出现在mscorlib.dll
我使用我通过NuGet安装了TagLig的最新版本。 任何建议?
编辑。 没有额外的信息由VS给出。
更改代码以拆分读取写入流。
var readfs = new FileStream(destfile, FileMode.Open);
var writefs = new FileStream(Path.Combine(SrcPath, "_" + ParentDirOfFile + "_" + filename), FileMode.Create);
using (var tagFile = TL.File.Create(new TL.StreamFileAbstraction(destfile, readfs, writefs)))
相同的错误和一个空的新文件被创建。
是否扔在第一次打救? – TaW 2015-02-10 18:58:06
是的。在第一时间。 – BrilBroeder 2015-02-11 12:39:16