• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Is there a way to detect what platform(unix or windows) my Java code is running on?

 
Greenhorn
Posts: 25
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
so that my code could process current directory correctly, e.g. ".\" for windows usage, and "./" for unix usage.
Thanks.
[ February 19, 2005: Message edited by: Nancy Zhang ]
 
Ranch Hand
Posts: 624
IntelliJ IDE Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
You can use System.getPropereties("os.name") to get the operating system's name. But the better way to do what you are trying to do is to use the static separator or separatorChar variables of the File class to determine what separator the OS uses. You can then construct a path:

Look at the API Docs for the File class for more information.

[edit note: My API link previously was linking to the J2EE API docs rather then the J2SE docs; sorry for any confusion]
[ February 19, 2005: Message edited by: Mark Vedder ]
 
Ranch Hand
Posts: 375
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Originally posted by Nancy Zhang:
so that my code could process current directory correctly, e.g. ".\" for windows usage, and "./" for unix usage.
Thanks.

[ February 19, 2005: Message edited by: Nancy Zhang ]



It shouldn't matter, as already said, just use something like



Ands then when you need to refer to it, just replace any references to a slash for either OS and refer to the variable. This is better in my opinion.
 
author
Posts: 14112
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
If you need to concat directory names, you can also use the appropriate File constructor, so that you don't have to care about the seperator at all.
 
reply
    Bookmark Topic Watch Topic
  • New Topic