Использование iText для открытия PDF-документов после записи в них

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

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

Почему этот пост не соответствует "стандартам качества" stackru?

1 ответ

Решение

Если вы используете Windows, вы можете использовать rundll32 запустить PDF-файл.

Попробуйте что-то вроде этого

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);
            }
Другие вопросы по тегам