2013-03-28 2 views
1

некоторый фон: Недавно я начал использовать Ubuntu, который, как я слышал, использовал для программирования. Я также создаю игру, в которой используются каталоги, такие как C:\Program Files\Folder\properties.properties, которые, как вы можете видеть, были предназначены для окон, потому что я просто передал их. то, что я хочу сделать, это продолжать кодирование окон, потому что в настоящее время это моя назначенная аудитория, но делайте это на ubuntu.Использование программы с каталогами кросс-платформы

так вот мой вопрос:

  1. я могу сделать путь к каталогу (т.е. C:\program files\folder\properties.properties.) Кросс-платформенный. поэтому, если os - Ubuntu, он идет /FolderName/properties.properties или что-то еще, и если это окна, это будет выглядеть так, как показано выше, а если Mac, то делает то, что делает Mac.
  2. Если нет, есть ли способ направить java на C:\program files\folder\properties.properties без фактического изменения пути. потому что прямо сейчас C: не распознается, потому что это не то, как работает linux.

Любая помощь будет замечательной! спасибо за тонну заранее!

EDIT: на основе первого ответа по @Ron Дальгрен, пожалуйста, ответьте на это: каталог моего бегового .jar является C:\Program Files\Folder\Files\bin\main.jar и путь к моему .properties является C:\Program Files\Folder\Files\User\properties.properties. поэтому я понимаю, как работает /, но как я могу заставить его перейти в папку и получить доступ к свойствам. как он получает доступ к файлу свойств? благодаря!

+0

Используйте 'File.separator' при конкатенации путей –

+0

*/this/path/work/in/both/OSes/* просто убедитесь, что ваша Java-программа работает в любом месте' C: \\ ' –

+0

@SotiriosDelimanolis, который выиграл Не работайте, если вы запускаете Java в Windows, но в другом диске, чем 'C'. –

ответ

3

В соответствии с принятым ответом here вы можете просто использовать косые черты повсюду, и JVM будет обрабатывать преобразование.

В ответ на ваше редактирование вы можете использовать относительный путь к каждому из этих элементов или развернуть их в одном месте, чтобы эффективно устранить проблему.

+0

См. Править: D – PulsePanda

+1

И на самом деле Windows понимает'/'. Даже программа C/C++, использующая Windows API, может использовать '/' вместо '\\', и она отлично работает. –

+0

@ EliahKagan Это хорошо знать на самом деле –

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