2013-04-11 4 views
1

Я использую iText и класс Document в JFrame для записи PDF-файлов, но если я попытаюсь использовать класс Runtime для запуска его после создания, я получаю исключение, которое я не могу открыть к замкам, все еще на нем, и если я запустил Unlocker на нем, у моего JFrame есть токен блокировки на нем. Как открыть PDF-файл, если я хочу написать ему?Использование iText для открытия PDF-документов после их записи

Document d = new Document(); 
.... code 
d.close(); 
Runtime.getRuntime().exec("D:/PDFChartStuff.pdf"); 

Почему эта публикация не соответствует стандартам качества stackoverflow?

+0

Кто сказал, что это не соответствует "стандартам качества"? Как вы могли себе представить, что во время публикации? – IndoKnight

+0

Я продолжал пытаться ударить по почте, и он продолжал говорить мне: «Это сообщение не соответствует стандартам качества». Наконец, позвольте мне опубликовать его после того, как я поставил это предложение в – Arhowk

+0

См. Также [Q & A] (http://meta.stackexchange.com/q/92074/163188). – trashgod

ответ

3

Если вы используете окна, вы можете использовать rundll32 для запуска pdf-файла.

Try что-то вроде этого

String pdfFile="D:/PDFChartStuff.pdf"; 
if (pdfFile.toString().endsWith(".pdf")) { 
       Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + pdfFile); 
      } else { 
       //For cross platform use 
       Desktop desktop = Desktop.getDesktop(); 
       desktop.open(pdfFile); 
      } 
+0

Работает отлично! – Arhowk

+0

desktop.open (pdfFile); -> эта строка не работает. Метод open() показывает String как несовместимый тип. – Danger

Смежные вопросы