Java user.home для возврата на местном языке

Когда я работаю System.getProperty("user.home") на турецких окнах 7, я получаю "C:\Users\aaaa" даже при том, что папка "Users" не существует в моем компьютере (у меня есть турецкий перевод "пользователей"). Как я могу получить корректную user.home информацию?Спасибо

8
задан artsince 30 June 2010 в 10:50
поделиться

2 ответа

, даже если в папке «Пользователи» нет существуют на моем компьютере (у меня есть турецкий перевод «пользователи»).

Это неправда. У вас есть папка «Пользователи». Windows просто автоматически переводит его при отображении. Но вы должны использовать «Пользователи» для путей файловой системы, что возвращает user.home . Локализованное имя актуально только для отображения его пользователю. Я не уверен, как получить это из кода Java.

Честно говоря, я считаю, что вся концепция отображения пользователю других имен папок, отличных от того, что на самом деле присутствует в файловой системе, является причудливым извращением.

4
ответ дан 5 December 2019 в 12:07
поделиться

Какая у вас версия Windows? В Vista и более поздних версиях (2008, 2008R2, Windows7) папка в файловой системе называется Пользователи , независимо от текущего языка. Но Windows Explorer отображает его на языке пользовательского интерфейса, в моем случае «Benutzer» (немецкий). Вы можете проверить в командном окне, что настоящее имя этой папки - Пользователи .

10
ответ дан 5 December 2019 в 12:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: