При экспорте данных пропадают символы

ArcGIS 8.x,9.x,10.x (Arcview, ArcEditor, Arcinfo).
Воронин С.В.
Завсегдатай
Сообщения: 362
Зарегистрирован: 06 ноя 2009, 13:18
Репутация: 8
Откуда: Екатеринбург

При экспорте данных пропадают символы

Сообщение Воронин С.В. » 21 мар 2014, 12:15

Господа.
У меня есть полигональный слой.
В таблице атрибутов забита как цифровая, так и символьная информация (латиницей).
При экспорте данных символы в новом шейпе в поле GRAN пропадают.
При этом в новом шейпе создаётся дополнительный файл с расширением cpg.
Если открыть dbf-файл нового шейпа, то там текст отражается странными кракозябрами, он есть и в поле GRAN
Я понимаю, что меняется кодировка - но почему, от куда берётся и как избежать подобного?
С другими то шейпами всё в порядке.

Я удалял cpg. Переправлял данные. При экспорте всё повторяется опять.

Прикрепил архив с нормальным шейпом и если с него сделать экспорт данных,
то в новом шейпе происходят эти изменения.
Вложения
Русско-Потамский.rar
(270.56 КБ) 244 скачивания
Последний раз редактировалось Воронин С.В. 21 мар 2014, 15:56, всего редактировалось 2 раза.

lam
Гуру
Сообщения: 899
Зарегистрирован: 01 авг 2012, 13:55
Репутация: 212

Re: При экспорте данных пропадают символы

Сообщение lam » 21 мар 2014, 13:20

При экспорте в ArcGis в новый шейп все происходит корректно, ничего не пропадает в полях.

Воронин С.В.
Завсегдатай
Сообщения: 362
Зарегистрирован: 06 ноя 2009, 13:18
Репутация: 8
Откуда: Екатеринбург

Re: При экспорте данных пропадают символы

Сообщение Воронин С.В. » 21 мар 2014, 14:45

Господа.
Может это связано с версией 10.2.1?
Только что у себя дома, открыл выложенный шейп в ArcGIS 10.2.1.
Открываю таблицу атрибутов - всё в порядке.
Делаю экспорт данных.
Открываю таблицу атрибутов - данных в поле GRAN нет.
И опять, через проводник, вижу, что к шейпу добавился файл с расширением cpg.
Открываю dbf-файл нового шейпа, там текст отражается кракозябрами и в нормальном режиме и в режиме DOS,
при чём кракозябры каждый раз разные.
Если удалить файл с расширением cpg, то и в ArcGIS-е в таблице атрибутов всё будет в этих кракозябрах,
при чём эти кракозябры какие-то странные, нового вида - по крайней мере я такие не встречал.

lam
Гуру
Сообщения: 899
Зарегистрирован: 01 авг 2012, 13:55
Репутация: 212

Re: При экспорте данных пропадают символы

Сообщение lam » 21 мар 2014, 14:51

у меня версия 10.0

Воронин С.В.
Завсегдатай
Сообщения: 362
Зарегистрирован: 06 ноя 2009, 13:18
Репутация: 8
Откуда: Екатеринбург

Re: При экспорте данных пропадают символы

Сообщение Воронин С.В. » 21 мар 2014, 15:02

lam писал(а):у меня версия 10.0
Может Вы экспорт данных не сделали?
Выложенный шейп нормальный.
Всё происходит если с него сделать экспорт данных.
И именно с новым шейпом происходят эти непонятки.

lam
Гуру
Сообщения: 899
Зарегистрирован: 01 авг 2012, 13:55
Репутация: 212

Re: При экспорте данных пропадают символы

Сообщение lam » 21 мар 2014, 16:05

шейп
Вложения
Export_Output.rar
(270.33 КБ) 396 скачиваний

Воронин С.В.
Завсегдатай
Сообщения: 362
Зарегистрирован: 06 ноя 2009, 13:18
Репутация: 8
Откуда: Екатеринбург

Re: При экспорте данных пропадают символы

Сообщение Воронин С.В. » 21 мар 2014, 19:04

Похоже это глюк версии 10.2.1.
При экспорте данных шейпа с кирилицей создаётся дополнительный файл с расширением cpg.
Если его открыть в блокноте, то там простая запись - UTF-8.
Всё бы ничего.
Но текстовка-то меняется.
В ArcGIS-e кирилица отображается, но в том же DBF-навигаторе одни кракозябры, что в стандартном режиме, что в режиме DOS.
А если ширина текстового поля равна одному знаку, то информация пропадает.
Но если ширину поля сделать равной двум, то первый знак сохраняется, но 2-й всё-равно пропадает.

Как пример я вложил архив.
В нём два шейпа созданные из архива от lam.
Очень интересно просматривать их в DBF-навигаторе.
Вложения
Export_Output_2_&_3.rar
(540.26 КБ) 216 скачиваний

trir
Гуру
Сообщения: 4662
Зарегистрирован: 09 апр 2010, 19:30
Статьи: 1
Репутация: 877
Ваше звание: просто мимо прохожу
Откуда: Ё-бург

Re: При экспорте данных пропадают символы

Сообщение trir » 21 мар 2014, 19:23


Воронин С.В.
Завсегдатай
Сообщения: 362
Зарегистрирован: 06 ноя 2009, 13:18
Репутация: 8
Откуда: Екатеринбург

Re: При экспорте данных пропадают символы

Сообщение Воронин С.В. » 21 мар 2014, 23:12

trir писал(а):RTFM
Да с UTF-то всё понятно.
Не понятна эта пертурбация.
Зачем или почему этот файл cpg создаётся?
Он создаётся в момент экспорта данных, и при этом часть информации слетает.

А самое страшное в том, что я в последствии использую dbf-файл.
Попробуйте, ради интереса, открыть dbf-файл в последних выложенных архивах, тем же dbf-навигатором.
Там полная ахинея что в кодировке DOS, что в UTF.

Аватара пользователя
Игорь Лебедь
Завсегдатай
Сообщения: 451
Зарегистрирован: 24 апр 2010, 19:47
Репутация: 100
Откуда: Город в клёнах и акациях
Контактная информация:

Re: При экспорте данных пропадают символы

Сообщение Игорь Лебедь » 24 мар 2014, 09:49

Воронин С.В. писал(а):
trir писал(а):RTFM
Да с UTF-то всё понятно.
Не понятна эта пертурбация.
Зачем или почему этот файл cpg создаётся?
Он создаётся в момент экспорта данных, и при этом часть информации слетает.

А самое страшное в том, что я в последствии использую dbf-файл.
Попробуйте, ради интереса, открыть dbf-файл в последних выложенных архивах, тем же dbf-навигатором.
Там полная ахинея что в кодировке DOS, что в UTF.
Подтверждаю ошибку в той же версии: во-первых, из исходного файла в системной кодировке получен при экспорте файл в кодировке UTF-8, во-вторых, колонка GRAN оказалась со значениями NULL (как показало открытие в QGIS).
rp.png
rp.png (101.81 КБ) 8913 просмотров
Сам часто сталкивался с такими проблемами при работе в ArcGIS с Панорамой. У Вас в колонке этой величина поля 1 символ - увеличьте хотя бы до двух, потому что потом при экспорте UTF-8 сократит в два раза, а с величиной в один символ он, естественно, слопает единственный. Я создал в Вашем шейпе дополнительную колонку GRAN2 с величиной в 2 символа (значения перенёс калькулятором по колонке GRAN), и экспорт прошёл нормально.
А про dbf - открывайте его напрямую LibreOffice Calc'ом - он спросит при открытии кодировку, выберете нужную (обычно или UTF-8, или Win-1251), а затем пересохраните в ёксель или что Вам нужно дальше.
Вложения
Exp.7z
(199.94 КБ) 237 скачиваний

Воронин С.В.
Завсегдатай
Сообщения: 362
Зарегистрирован: 06 ноя 2009, 13:18
Репутация: 8
Откуда: Екатеринбург

Re: При экспорте данных пропадают символы

Сообщение Воронин С.В. » 24 мар 2014, 11:28

vsugig писал(а):У Вас в колонке этой величина поля 1 символ - увеличьте хотя бы до двух
Пробовал господа.
При этом первый символ остаётся, а пропадёт 2-й символ.
А с пятью символами, дак вообще интересно, первые 2 остаются - последние три исчезают.

Суть ограничения в один символ, в том что бы не допустить ошибки при заполнении таблицы атрибутов.
А подобных ограничений в таблице, достаточно много.

А дальше данные используются в FOXPRO for DOS, там то же кракозябры нового типа.

Аватара пользователя
Игорь Лебедь
Завсегдатай
Сообщения: 451
Зарегистрирован: 24 апр 2010, 19:47
Репутация: 100
Откуда: Город в клёнах и акациях
Контактная информация:

Re: При экспорте данных пропадают символы

Сообщение Игорь Лебедь » 24 мар 2014, 12:33

Воронин С.В. писал(а):
vsugig писал(а):У Вас в колонке этой величина поля 1 символ - увеличьте хотя бы до двух
Пробовал господа.
При этом первый символ остаётся, а пропадёт 2-й символ.
А с пятью символами, дак вообще интересно, первые 2 остаются - последние три исчезают.

Суть ограничения в один символ, в том что бы не допустить ошибки при заполнении таблицы атрибутов.
А подобных ограничений в таблице, достаточно много.

А дальше данные используются в FOXPRO for DOS, там то же кракозябры нового типа.
Как замечено в подобных ситуациях, при конвертации размер полей сокращается в два раза (вытекает из свойств UTF-8), соответственно Вам лучше пересохранить Ваш корректный шейп в кугисе из кодировки 1251 в кодировку UTF-8, а затем работать в UTF-ном шейпе. Во вложении пример, там все колонки увеличились в два раза, а если Вы в кугисе создадите сразу в ютф-8 шейп с нужным количеством символов по колонкам, то экспорт из него пойдёт нормально.
Наверно оптимально будет создать в кугисе новый шейп с нужным количеством символов в колонках таблицы атрибутов, а затем просто скопировать в него все объекты из шейпа с удвоенными колонками - все атрибуты пропишутся куда надо, а затем дальше продолжите редактирование.
Вложения
Exp2.7z
(198.25 КБ) 221 скачивание
Последний раз редактировалось Игорь Лебедь 24 мар 2014, 13:03, всего редактировалось 1 раз.

Аватара пользователя
Pete_Stepanov
Новоприбывший
Сообщения: 4
Зарегистрирован: 23 мар 2014, 17:06
Репутация: 3
Откуда: Смоленск
Контактная информация:

Re: При экспорте данных пропадают символы

Сообщение Pete_Stepanov » 24 мар 2014, 13:00

Воронин С.В. писал(а): Да с UTF-то всё понятно.
Не понятна эта пертурбация.
Зачем или почему этот файл cpg создаётся?
Создается он для корректного использования ваших данных в ArcGIS Online, так как он работает только с UTF-8. Видимо при установке новой версии происходит следующее

Воронин С.В.
Завсегдатай
Сообщения: 362
Зарегистрирован: 06 ноя 2009, 13:18
Репутация: 8
Откуда: Екатеринбург

Re: При экспорте данных пропадают символы

Сообщение Воронин С.В. » 24 мар 2014, 13:39

Pete_Stepanov писал(а):Видимо при установке новой версии происходит следующее
Очень похоже, что именно для автоматического определения кодировки файл cpg. и нужен.
Но что делать с потерей и изменением информации?
Суть проблемы остаётся.

Аватара пользователя
Pete_Stepanov
Новоприбывший
Сообщения: 4
Зарегистрирован: 23 мар 2014, 17:06
Репутация: 3
Откуда: Смоленск
Контактная информация:

Re: При экспорте данных пропадают символы

Сообщение Pete_Stepanov » 24 мар 2014, 14:16

Воронин С.В. писал(а):Но что делать с потерей и изменением информации? Суть проблемы остаётся.
Логично предположить, что в dbfDefault вместо "UTF-8" следует прописать "CP-1251" или проделать тоже самое, только в обратной последовательности, т.е. удалить созданный раздел "Common" и тогда файлы ArcGIS будут создаваться в системной кодировке

Ответить

Вернуться в «ArcGIS»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 6 гостей