2012-10-26 7 views
0

오디오 CD 리퍼를 Java로 작성하여 작동 방법을 배울 수있었습니다. CD 드라이브에서 노래를 실제로 읽는 방법을 알아낼 수 없습니다. CD에서 섹터에 액세스 할 수 없으면 .cda 파일을 열 수 있지만 매우 유용하지는 않습니다. 아래 코드를 사용하여 D : 드라이브 (내 컴퓨터의 CD 드라이브)를 열려고 시도했지만 File Not Found 오류가 발생합니다. 나는 CD 드라이브가 파일이 아니기 때문에 이것이라고 생각합니다. 다른 유형의 입력 스트림이 있거나 CD 드라이브에서 읽을 수있는 다른 방법이 있습니까? 나는 오랜 시간 동안 수색 해왔고 도움이 될만한 것이 없다.Windows에서 Java를 사용하여 CD 드라이브에서 읽는 방법

public class learning 
{ 
    public static void main(String[] args) throws IOException 
    { 
     FileInputStream input = new FileInputStream("D:\\"); 
    } 
} 

특정 오류 메시지는 다음과 같습니다

Exception in thread "main" java.io.FileNotFoundException: D:\ (The system cannot find the path specified) 
    at java.io.FileInputStream.open(Native Method) 
    at java.io.FileInputStream.<init>(Unknown Source) 
    at java.io.FileInputStream.<init>(Unknown Source) 
    at learning.main(learning.java:5) 

건배 다니엘은

+1

나는 오디오 CD가 파일 시스템에서 사용 가능한지 의심 스럽다. –

+0

죄송합니다. 무슨 뜻인지 이해하지 못합니다. –

+1

'FIleInputStream' 파일 시스템에서 읽습니다. 오디오 CD는 파일을 변환하지 않습니다. –

답변

0

이에 대한 OS 프로젝트가 : Ripper.

마법은 getCDDADir()getCDDAStream() 기능 (나는 ... 그런 다음 내가 너무 라이센스를 게시해야 할 것, 실제 소스를 게시 할 두려워)

편집에서 GrabEncodePanel.java에 나는 오늘도 뭔가를 배웠다 : 이것은 리눅스에서만 단호하다. this FAQ

+0

"URL url = 새 URL ("cdda :/dev/cdrom ");" "알 수없는 프로토콜 : cdda"라고 말합니다 –

+0

@DanielBraithwaite 제 답장을 편집했습니다.이 방법은 Linux에서만 작동합니다 ... – ppeterka

+0

글쎄요, 어떤 OS에서도 동일합니다 : 실제 장치에 대한 핸들을 가져 와서 읽어보십시오 . Unix가 좋아하는 사람들이 접근 가능한 파일 시스템에있는 것을 좋아하는 것입니다. Windows에는 이러한 계층을 포함하는 상위 수준의 계층 구조가 있으며 일반적으로 Java와 같은 추상화에는 사용할 수 없습니다. – Joey