【问题标题】:How to use taglib to get information from a audio file如何使用 taglib 从音频文件中获取信息
【发布时间】:2019-07-26 10:54:36
【问题描述】:

一开始我想用Taglib 创建一个文件时出现以下错误。

错误:

CS1503 参数 1:无法从“字符串”转换为“TagLib.File.IFileAbstraction”

string fileToOpen=@"D:\music.mp3";
TagLib.File musicinfo = TagLib.File.Create(fileToOpen);
textBox5.Text = musicinfo.Tag.Title;
textBox2.Text = musicinfo.Tag.FirstAlbumArtist;
textBox3.Text = musicinfo.Tag.Album;

文件的路径是字符串,为什么会出现这个错误?

【问题讨论】:

  • D:\music.mp3 是否存在文件?您是在编译期间还是在运行时收到此错误?
  • 是的,路径没问题,文件存在。这个错误来自我写代码的时候。即使我写任何字符串,我都会得到同样的错误。
  • 你使用这个库github.com/mono/taglib-sharp 吗?
  • 您的代码在这里运行良好。我使用 taglib-sharp.dll v2.0.50727。 mp3文件有效吗?

标签: c# taglib


【解决方案1】:

确保您使用正确的 TagLib。

Nuget:https://www.nuget.org/packages/taglib/2.1.0

Github:https://github.com/mono/taglib-sharp

文件 file = TagLib.File.Create("字符串路径");

class Program
{
    static void Main(string[] args)
    {
        File file = TagLib.File.Create(@"C:\Users\MSU-01\Desktop\asd.mp3");
        string title = file.Tag.Title;
        Console.WriteLine(title);
        Console.ReadLine();
    }
}

【讨论】:

  • 我正在这样做,但看到编译错误“无法从 'string' 转换为 'TagLib.File.IFileAbstraction'”。不知道我做错了什么,我从 nuget 获得了最新信息,并为文件路径传入了一个字符串。有任何想法吗?谢谢。
  • 感谢 OMANSAK 的回复。不,我还没有尝试过那个链接..还没有。但是我能够让它工作,但是我需要对代码做更多的摆弄才能让流工作,这是我觉得令人沮丧的部分。 Create now 似乎不使用字符串(文件名)作为输入,而只使用一个流(不幸的是,我对流的了解还不够,无法做到“只是翼翼”)。感谢您的时间和回复。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-12-19
  • 2012-01-04
  • 1970-01-01
  • 2011-07-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多