我正在尝试使用 PowerShell 检索“详细信息”选项卡的“媒体”部分中列出的一些扩展文件属性(准确地说是 mp3 文件)。
有喜欢的附加属性bitrate,genre,album,等。
可悲的Get-ItemProperty -Path $pathtofile | Format-List是不会返回那些。
Get-ItemProperty -Path $pathtofile | Get-Member 也没有列出它们。
很奇怪,Get-ItemProperty返回与Get-ChildItem.
我尝试了不同的文件(甚至非 mp3),而 PowerShell 没有在任何地方列出“详细信息”属性。
Windows 在哪里存储这些?又怎么能一一列举呢?
感谢这个网站和其他一些网站,我创建了一些简单的代码来从MP3文件中读取ID3v2.3标签.这样做是一次很棒的学习经历,因为我之前不知道十六进制/字节/二进制等.
我可以成功读取数据,但遇到了一个我认为与使用的编码有关的问题.我已经意识到Text框架在'text'开头有一个字节描述了所使用的编码,并且可能在接下来的2个字节中有更多的信息......
示例:来自帧TIT2的数据以实际文本之前的字节$ 03(十六进制)开始.使用Encoding.ASCII.GetString,此文本正确显示,尽管在开头有一个额外的字符
在另一个MP3中,来自TIT2的数据启动$ 01,然后是$ FF $ FE,我相信这与Unicode有关吗?虽然文本本身被分解,每个文本字符之间有$ 00,这会阻止数据显示在windows窗体中(一旦遇到00,文本就会停止,所以我得到了第一个字符,那就是它).我已经尝试过使用Encoding.UNICODE.GetString,但这似乎只是回归乱码.
将这些数据打印到控制台似乎有效,每个字符之间有空格,因此数据的读取工作正常.
我一直在阅读ID3v2.3的官方文档,但我想我只是不太了解文本编码部分.
任何回复或链接到可能有帮助的文章将非常感谢!
关心罗斯
有没有人知道我可以使用node.js读取文件元数据的方法?例如,我想阅读jpeg文件(在Windows机器上)的"详细信息"选项卡上的"注释"属性.请参阅下面的图片,了解我试图从文件的元数据中读取的内容.

ascii ×1
attributes ×1
encoding ×1
file ×1
hex ×1
id3 ×1
id3v2 ×1
javascript ×1
node.js ×1
powershell ×1
unicode ×1