Позвольте мне сначала кратко рассказать о теге ID3 в MP3, потому что он в основном используется для работы с этой штукой.
Вначале в MP3 не было информации об исполнителях, годах, альбомах и т. д., как мы видим сегодня.
Есть только несколько простых параметров, таких как да/нет, чтобы указать, является ли файл частным или защищенным авторским правом и т. д. Это принесло много неудобств в работу, связанную с MP3. В 1996 году иностранец предложил добавлять часть данных после каждого MP3. , используя для хранения вышеуказанной информации, позже он превратился в id3 v1. Насколько я знаю, сейчас он достиг версии 1.1, мне лучше самому проверить.
Использование метаданных для представления DLL все еще является старой привычкой. Если вы не знаете, проверьте это сами.
Посмотрите на код
<!--ТИП МЕТАДАННЫХ=typelib
UUID=00000205-0000-0010-8000-00AA006D2EA4
NAME=Библиотека типов ADODB
-->
<%
Функция ConvertBin(двоичный)
'Эта функция преобразует двоичный байт в байт ASCII.
для i = 1 до LenB (двоичный)
strChar = chr(AscB(MidB(Binary,i,1)))
КонвертироватьБин = КонвертироватьБин и стрЧар
Следующий
Конечная функция
DimobjStream
dim strTag, strSongName, strArtist, strAlbum, strYear, _
стркоммент, стржанр, стрфиле
'Укажите папку для перебора, отображая все файлы MP3
Константная папка = C:/mp3s/
'Захватите информацию о папке
Затемнить objFSO, objFolder, objFile
Установите objFSO = Server.CreateObject(Scripting.FileSYstemObject)
Установите objFolder = objFSO.GetFolder(папка)
'Создаем объект потока
установить objStream = Server.CreateObject(ADODB.Stream)
objStream.Type = adTypeBinary
'Прокручиваем файлы в папке
Для каждого objFile в objFolder.Files
«Открой поток
objStream.Open
objStream.LoadFromFile objFile.Path
'Читаем последние 128 байт
objStream.Position =objStream.size - 128
'Читать информацию тега ID3 v1
strTag = ConvertBin(objStream.Read(3))
если ucase(strTag) = TAG, то
strSongName = ConvertBin(objStream.Read(30))
strArtist = ConvertBin(objStream.Read(30))
strAlbum = ConvertBin(objStream.Read(30))
strYear = ConvertBin(objStream.Read(4))
strComment = ConvertBin(objStream.Read(30))
конец, если
'Показать результаты
response.write <table><tr><td colspan=2><h3> & _
Информация тега ID3 для:</td></tr><tr> & _
<td colspan=2> & objFile.Name & </td></tr>
response.write <tr><td><b>Исполнитель: </b></td> & _
<td> & strArtist & </td></tr>
response.write <tr><td><b>Отслеживать: </b></td> & _
<td> & strSongName& </td></tr>
response.write <tr><td><b>Альбом: </b></td> & _
<td> & strAlbum & </td></tr>
response.write <tr><td><b>Год: </b></td> & _
<td> & strYear & </td></tr>
response.write <tr><td><b>Комментарий: </b> & _
</td><td> & strComment & </td></tr>
ответ.запись </таблица>
objStream.Close
Response.Write <p><hr><p>
Следующий
Установите objStream = Nothing'Очистить...
%>
Попробуйте сами