首页 文章

从本地路径加载Midi?

提问于
浏览
1

其中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 回答

  • 0

    仅当文件包含类路径时, getRecourceAsStream() 才有用 . 如果文件系统上有文件,则应调用:

    song = MidiSystem.getSequence(new FileInputStream("/path/to/midi/file"));
    
  • 1

    试试这个:

    song = MidiSystem.getSequence(getClass() . getResourceAsStream(“@ filextension”));

    或者您可以使用filereader .

相关问题