내 브라우저에 작은 mp3 플레이어를 코딩하고 싶습니다. 모든 mp3 파일은 로컬에 저장됩니다.ActiveXObject와 readAsBinaryString() 결합
따라서, 객체가 "readAsBinaryString()"를 지원하지 않습니다, 나는
var filePath = '...';
var fso = new ActiveXObject("Scripting.FileSystemObject");
var file = fso.GetFile(filePath);
이후
var oFReader = new FileReader();
oFReader.readAsBinaryString(file);
를 사용해야하지만이 오류가 발생합니다. 그래서, 나는 "파일"이라는 객체가 정확히 같은 객체가 아니라고 생각합니다.
도와 주시겠습니까? ActiveXObject()와 readAsBinaryString()을 어떻게 결합 할 수 있습니까?
도움을 주셔서 감사합니다. 문제는 다음과 같습니다. ID3v2 태그를 읽어야합니다. 따라서 이진 문자열을 읽어야합니다. 아마도 ActiveXObject()를 통해 이진 문자열을 읽고 ID3 읽기 함수로 보냅니다. – user2089120
실제로 Microsoft ArrayBuffer를 사용하여 저장하는 것보다 비효율적 이었기 때문에 readAsBinaryString()을 삭제할 것을 제안했습니다. 따라서 동일한 메서드가 [readAsArrayBuffer()] (http://www.w3.org/TR/FileAPI/#readAsArrayBuffer)가됩니다. 호환성을 위해 어떤 메서드를 사용할 수 있는지 제대로 감지하고 둘 다 구현하는 함수를 작성하는 것이 좋습니다 (사용 가능한 경우 readAsArrayBuffer()에 대한 환경 설정 사용). –
그냥 이해해야합니다 ... 내가 readAsArrayBuffer()를 사용할 때 Blob 객체가 여전히 필요합니다. 맞습니까? – user2089120