其中filename是midi文件。我想加载一个完整的路径(从本地硬盘)到getSequence但它不接受除文件名本身。对不起,我不擅长Java,并希望有一个解决方案满足我的需求。
song = MidiSystem.getSequence(getClass()。getResourceAsStream(filename));
我的Firefox浏览器中缺少Stackoverflow的richtext工具栏?
[更新]
尝试{ 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(“无序列器可用”); System.exit(1); } catch(IOException e){ System.out.println(“无法读取:” + filename); System.exit(1); }
答案 0 :(得分:1)
getRecourceAsStream()
才有用。如果文件系统上有文件,则应调用:
song = MidiSystem.getSequence(new FileInputStream("/path/to/midi/file"));
答案 1 :(得分:0)
试试这个:
song = MidiSystem.getSequence(getClass()。getResourceAsStream(“@ filextension”));
或者你可以使用filereader。