2

For example, one application that I'm working on stores PDF files into a database, then can pull them back out for display. I've got a call in there using Runtime.exec to do a "cmd /c start " plus the PDF filename. Works great for Windows. Would prefer to find a platform independent way (trying to avoid OS detection with alternate methods for various OS) to do this though as we also run the software on Solaris and Mac.

Brian Knoblauch
  • 20,639
  • 15
  • 57
  • 92

2 Answers2

3

Look at Desktop which has a open method and that would be platform independent.

Launches the associated application to open the file.

willcodejavaforfood
  • 43,223
  • 17
  • 81
  • 111
1

I'd be interested to see if there is a 'correct' answer for this. If I were to do this, I'd have a properties file mapping of OS to the command needed to run, and then resolve the OS at runtime.

Eg in a properties file:

windows=cmd /c start
mac=open #(I think)
linux=... etc
Noel M
  • 15,812
  • 8
  • 39
  • 47