Оберон-клуб «ВЄДАsoft» https://zx.oberon.org/forum/ |
|
Как определить существует ли файл в рабочем каталоге? https://zx.oberon.org/forum/viewtopic.php?f=79&t=464 |
Страница 1 из 1 |
Автор: | Len [ 28 июл 2019, 11:10 ] |
Заголовок сообщения: | Как определить существует ли файл в рабочем каталоге? |
Подскажите, как определить существует ли файл и как узнать путь к рабочему каталогу? |
Автор: | SovietPony [ 28 июл 2019, 16:19 ] |
Заголовок сообщения: | Re: Как определить существует ли файл в рабочем каталоге? |
Len писал(а): определить существует ли файл Эффективнее и надёжнее всего использовать платформозависимый код.В платформонезависимом виде лучше всего использовать Files.Directory.FileList. Len писал(а): узнать путь к рабочему каталогу В полностью платформонезависимом виде не получится.Но можно использовать такой код как минимум для win32: Код: "OBERON"
|
Автор: | Zorko [ 28 июл 2019, 18:32 ] |
Заголовок сообщения: | Re: Как определить существует ли файл в рабочем каталоге? |
Len писал(а): Подскажите, как определить существует ли файл Код: "OBERON"
Len писал(а): и как узнать путь к рабочему каталогу? Код: "OBERON"
|
Автор: | Len [ 18 авг 2019, 13:17 ] |
Заголовок сообщения: | Re: Как определить существует ли файл в рабочем каталоге? |
WinApi.GetFileAttributesW(dirName) к сожалению выдаёт -1, если в dirName встречается кириллица. |
Автор: | Len [ 18 авг 2019, 15:25 ] |
Заголовок сообщения: | Re: Как определить существует ли файл в рабочем каталоге? |
Кстати, Код: "OBERON"
Далее fi = NIL, однако если в адресе нет кириллицы то всё работает. |
Автор: | SovietPony [ 18 авг 2019, 15:52 ] |
Заголовок сообщения: | Re: Как определить существует ли файл в рабочем каталоге? |
Похоже винда тонко намекает о том что в использовать кириллицу в путях лучше не надо ;) А LocList/FileList показывают кириллицу? |
Автор: | Zorko [ 18 авг 2019, 20:27 ] |
Заголовок сообщения: | Re: Как определить существует ли файл в рабочем каталоге? |
Len писал(а): WinApi.GetFileAttributesW(dirName) к сожалению выдаёт -1, если в dirName встречается кириллица. Это, однако, странно. А если добавить к пути "\\?\"?Навскидку в голову приходит идея, что перед вызовом GetFileAttributesW нужно задать правильную кодовую страницу для кириллицы, если она почему-то сбилась. Так что может дело не в самой кириллице? Ещё можно попробовать предварительно обработать путь при помощи функции GetShortPathNameW (код не тестировал). Код: "OBERON"
|
Страница 1 из 1 | Часовой пояс: UTC + 2 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |