CakeWalk MIDIエディターから「コピー」されたクリップボードデータ(Windows)を取得しようとしています。それらはクリップボードビューアに表示され、他のプログラムに貼り付けることができましたが、Javaプログラムでは取得できませんでした。
次のコードスニペットは、cakewalkからのmidiデータがクリップボードにある場合に空の配列を返します。たとえば、メモ帳からテキストをコピーすると、最大30個の「フレーバー」が返されます。私は何が間違っているのですか?
import java.util.*;
import java.awt.*;
import java.awt.datatransfer.*;
public class TestClipboard {
public static void main(String... args) {
Clipboard c = Toolkit.getDefaultToolkit().getSystemClipboard();
System.out.println(Arrays.toString(c.getContents(TestClipboard.class).getTransferDataFlavors()));
c = Toolkit.getDefaultToolkit().getSystemSelection();
System.out.println(Arrays.toString(c.getContents(TestClipboard.class).getTransferDataFlavors()));
}
}