2013-12-10 72 views
7

我想知道如何通過java打開文件。如何通過java打開現有文件如.docx,.txt,.pptx?

我可以打開Office本身這樣

 try { 
     Runtime runTime = Runtime.getRuntime(); 
     Process process = runTime.exec("C:\\Program Files\\Microsoft Office\\Office15\\EXCEL.EXE"); 

    } catch (IOException e) { 
     e.printStackTrace(); 
    } 

但我想直接從Java打開的文件。

+0

最新問題? –

+0

您的標題和問題不太匹配。你想在這裏做什麼? – Keppil

+0

你想閱讀的內容? –

回答

8

試試這個,

try{ 

     if ((new File("c:\\your_file.pdf")).exists()) { 

      Process p = Runtime 
       .getRuntime() 
       .exec("rundll32 url.dll,FileProtocolHandler c:\\your_file.pdf"); 
      p.waitFor(); 

     } else { 

      System.out.println("File does not exist"); 

     } 

     } catch (Exception ex) { 
     ex.printStackTrace(); 
     } 

,或者你可以用Desktop.open(File)做到這一點,

if (Desktop.isDesktopSupported()) { 
    try { 
     File myFile = new File("/path/to/file.pdf"); 
     Desktop.getDesktop().open(myFile); 
    } catch (IOException ex) { 
     // no application registered for PDFs 
    } 
} 

您可以打開PPTX(及以上)文件,以及使用這種方法。

+1

Desktop.isDesktopSupported()找不到符號。 –

+0

sikander @你真了不起。它完美地工作(第一個)。 但第二個我得到錯誤「找不到符號桌面」 –

+0

哦,我發現它現在錯誤的原因... 再次感謝你@sikander –

相關問題