【发布时间】:2011-01-01 02:43:47
【问题描述】:
给定一个音频文件(mp3 或 wav),这里是否有一种方法可以获取文件的持续时间、大小(以字节为单位)和其他属性?
谢谢
【问题讨论】:
给定一个音频文件(mp3 或 wav),这里是否有一种方法可以获取文件的持续时间、大小(以字节为单位)和其他属性?
谢谢
【问题讨论】:
对于文件大小,FileInfo 值得一看
System.IO.FileInfo file = new System.IO.FileInfo(string filename);
long fileSize = file.Length;
这会告诉你文件大小
并获取隐藏状态等属性。像下面这样就可以搞定了
if (file.Attributes & System.IO.FileAttributes.Hidden == System.IO.FileAttributes.Hidden)
{
// hidden file
}
我使用 NAudio 库来查找曲目的持续时间 [以秒为单位]
【讨论】:
在此期间,您将需要一个库。我刚刚在谷歌上找到了这个。 http://www.codeplex.com/naudio
至于文件大小,请查看System.IO.File 类。 http://msdn.microsoft.com/en-us/library/system.io.file.aspx
【讨论】:
您可以通过写new FileInfo(path).Length获取文件大小。
如果你有它在一个流中,你可以简单地写stream.Length。
要获取其他信息,您需要音频编解码器。
【讨论】:
这是一个类似的 SO 帖子中关于如何在不使用库的情况下执行此操作的 aC++ 答案。
虽然作者想要 Python 代码,但他得到了其他可用的东西。也许逻辑就是你所需要的。
【讨论】: