Как получить длинный путь к файловой системе из python на Windows
Это возвращает мне короткий путь (соглашение DOS) (на Windows):
import tempfile
tempDir = tempfile.mkdtemp()
print tempDir
Output >>> c:usersadmini~1appdatalocaltemptmpf76unv
Обратите внимание на admini~1
.
Как я могу получить/преобразовать это в полный путь? например: C:usersadministratorappdata...
2 ответа:
Пожалуйста, попробуйте следующий код (обновлено):
from ctypes import create_unicode_buffer, windll BUFFER_SIZE = 500 buffer = create_unicode_buffer(BUFFER_SIZE) get_long_path_name = windll.kernel32.GetLongPathNameW get_long_path_name(unicode(short_path_name), buffer, BUFFER_SIZE) long_path_name = buffer.value
Надеюсь, это поможет. Пожалуйста, обратитесь к http://mail.python.org/pipermail/python-win32/2008-January/006642.html