Страница 1 из 1

Кракозябры в таблице шэйп-файла

Добавлено: 28 сен 2021, 15:55
Thug
Здравствуйте. Столкнулся с такой проблемой в ArcView GIS 3.2a - загружаю шэйп-файл в проект, открываю таблицу, а там кракозябры (см. картинку). Кто-нибудь с таким сталкивался?
Нагуглил, как исправить кракозябры в русской локализации - это помогло исправить лишь перевод интерфейса программы, но на отображение текста в проекте никак не повлияло.
Также нагуглил статью, в которой рассказывается, как настроить кодировку для директории. И это уже ближе к тому, что мне нужно, но тоже не помогло. Перепробовал разные кодировки, но везде кракозябры. В .cpg файлах указана кодировка UTF-8. Такое ощущение, что эта версия просто не понимает UTF-8. Есть способ заставить понимать?

Re: Кракозябры в таблице шэйп-файла

Добавлено: 28 сен 2021, 16:28
Ivor
Боюсь тут нужна помощь Верховных Магистров некромантии, и то не факт, что у них получится. Переконвертируйте шейпы в кодировку win1251 в том же QGis, например, и используйте уже их, если без ArcView никак

Re: Кракозябры в таблице шэйп-файла

Добавлено: 28 сен 2021, 23:22
_lenik
Мужчина всё правильно сказал. Проще всего открыть шейп-файл в QGIS и пересохранить в кодировке windows-1251.
Если не хотите пересохранять в другой файл, тогда можно открыть соответствующий dbf-файл програмкой DBFShow и конвертировать кодировку из UTF-8 в windows-1251 (Инструменты -> Конвертировать кодировки...).

Re: Кракозябры в таблице шэйп-файла

Добавлено: 29 сен 2021, 00:40
Thug
_lenik, вариант с QGIS рабочий. Но вариант с перекодировкой мне понравился больше, так быстрей. Только вот в чём проблема - DBFShow меняет кодировку только у содержимого ячеек в таблице, а заголовки столбцов по-прежнему остаются с кракозябрами. Кроме того, если сразу попытаться конвертировать через "Инструменты - Конвертировать кодировки", то нчиего не выйдет, так как программа игнорирует поле "текущая кодировка". Нужно сначала зайти в "разное - кодировка" и ткнуть там UTF-8, и только после этого идти в конвертацию. Но это ерунда. Главная проблема в том, что заголовки столбцов не меняются. Может быть, посоветуете ещё какой-нибудь редактор DBF? Я уже попробовал пару, но функции перекодировки из UTF-8 в Windows-1251 там нет.

Re: Кракозябры в таблице шэйп-файла

Добавлено: 29 сен 2021, 02:33
Ivor
Thug, вот так, например: https://gis.stackexchange.com/questions ... -manager-u
Единственное, может с русскими именами колонок не сработать. Ну и переименовывать лучше на латиницу. Или, если без питона - просто командой GDAL с тем же запросом

Re: Кракозябры в таблице шэйп-файла

Добавлено: 29 сен 2021, 09:26
drrrrr
Подобный вопрос здесь уже поднимался
Возможное решение см. viewtopic.php?f=27&t=26623&p=175525&hil ... 51#p175525

Re: Кракозябры в таблице шэйп-файла

Добавлено: 29 сен 2021, 09:52
Thug
Ivor, тогда уж проще пересохранить в QGIS. Он кодировку в именах столбцов меняет. В общем, спасибо, буду юзать QGIS.

Re: Кракозябры в таблице шэйп-файла

Добавлено: 29 сен 2021, 13:23
Thug
drrrrr, попробовал, через командную строку способ тоже рабочий. Опять-таки, без QGIS не обошлось. Спасибо)

Re: Кракозябры в таблице шэйп-файла

Добавлено: 29 сен 2021, 15:30
Ivor
Thug писал(а):
29 сен 2021, 13:23
Опять-таки, без QGIS не обошлось.
ogr2ogr - это не QGis, это из пакета GDAL. Совершенно самостоятельная вещь. Можно поставить отдельно и пользоваться.

Хотя я на вашем месте очень пристально бы подумал о возможности исключения ArcView из рабочего процесса. Может статься что тот же QGis вполне заменит его для ваших задач. потому как ArcView в 2021 году - это действительно некромантия.