2
Когда я пытаюсь установить некоторые текстовое содержимое в буфер обмена нашего любимого окна, используя приведенную нижеJava OutOfMemory Исключение Когда Clipboard
фрагмент кода, он отлично работает ДО некоторой 10-15MB. Но вне этого размера он выдает сообщение об ошибке
показано в конце. Как мы можем установить 30 + МБ текста utf в буфер обмена?
код:
Clipboard cb = Toolkit.getDefaultToolkit().getSystemClipboard();
File tmp = new File("c:\\web\\a.txt"); //This file's size > 38MB.
String s = readFileAsString(tmp);
cb.setContents(new StringSelection(s), null);
ошибка:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at java.lang.AbstractStringBuilder.<init>(AbstractStringBuilder.java:45)
at java.lang.StringBuffer.<init>(StringBuffer.java:91)
at sun.awt.datatransfer.DataTransferer.translateTransferable(DataTransferer.java:1001)
at sun.awt.windows.WDataTransferer.translateTransferable(WDataTransferer.java:163)
at sun.awt.windows.WClipboard.setContentsNative(WClipboard.java:73)
at sun.awt.datatransfer.SunClipboard.setContents(SunClipboard.java:93)
at com.webform.XMLReader.main(XMLReader.java:67)
Java Result: 1
BUILD SUCCESSFUL (total time: 1 second)
http://stackoverflow.com/questions/1321866/clipboard-size-limit проверить здесь помощник. – kommradHomer