其中filename是midi文件 . 我想加载一个完整的路径(从本地硬盘)到getSequence但它不接受除文件名本身 . 对不起,我不擅长Java,并希望有一个解决方案满足我的需求 .
song = MidiSystem.getSequence(getClass() . getResourceAsStream(filename));
我的Firefox浏览器中缺少Stackoverflow的richtext工具栏?
[更新]
try {song = MidiSystem.getSequence(new FileInputStream(filename)); sequencer = MidiSystem.getSequencer(); sequencer.setSequence(歌曲); sequencer.open(); sequencer.addMetaEventListener(本); sequencer.start(); } catch(InvalidMidiDataException e){System.out.println(“Bad midi file:”filename); System.exit(1); } catch(MidiUnavailableException e){System.out.println(“No sequencer available”); System.exit(1); } catch(IOException e){System.out.println(“无法读取:”文件名); System.exit(1); }
2 回答
仅当文件包含类路径时,
getRecourceAsStream()
才有用 . 如果文件系统上有文件,则应调用:试试这个:
song = MidiSystem.getSequence(getClass() . getResourceAsStream(“@ filextension”));
或者您可以使用filereader .