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

проблема объединения слоя с csv

Добавлено: 24 янв 2011, 15:22
holden
К векторному слою с полигонами добавляю таблицу cvs из xls. Поля определяет как string, чтобы я ни делал.
Подскажите, пожалуйста, решение.

Re: проблема объединения слоя с csv

Добавлено: 24 янв 2011, 15:24
Максим Дубинин
в csv названия полей и значения которые дожны быть численными, не в кавычках ли?

Re: проблема объединения слоя с csv

Добавлено: 24 янв 2011, 15:37
holden
Все без кавычек

Re: проблема объединения слоя с csv

Добавлено: 24 янв 2011, 16:32
Максим Дубинин
выложите кусок шейпа и кусок csv

Re: проблема объединения слоя с csv

Добавлено: 25 янв 2011, 22:53
holden
Вот файлы.
На IRC обсуждали с другим человеком, у него была такая же проблема со своими файлами.

Re: проблема объединения слоя с csv

Добавлено: 26 янв 2011, 05:38
Denis Rykov
Каким способом вы объединяете данные? И запакуйте полный набор файлов, а не только *.shp - иначе он не откроется.

Re: проблема объединения слоя с csv

Добавлено: 26 янв 2011, 13:26
holden
Вектор - управление данными - объединение атрибутов - объединить с dbf таблицей.

Возник ряд вопросов по объединению с самим .dbf в поисках окольных путей. Кодировку при экспорте из excel восстанавливаю в DBF Commander, а наименования полей он оставляет прежними. Как с этим бороться и правильно создать dbf для объединения? Делать руками траслит названий в большой дб явно не лучший вариант.

Полный набор слоя в приложении.

Re: проблема объединения слоя с csv

Добавлено: 26 янв 2011, 14:13
holden
Поле Границы (название задавал, когда еще не разобрался, поэтому не говорящее) в слое объединяется с полем Уезды из csv.

Re: проблема объединения слоя с csv

Добавлено: 26 янв 2011, 14:16
Denis Rykov
Короче, все очень просто - создаёте в том же каталоге, что и *.csv файл - файл с тем же именем и расширением *.csvt и содержимым вида:

Код: Выделить всё

"String","String","Integer","Integer","Integer","Integer","Integer","Integer","Integer","Integer","Integer","Integer","Integer","Integer"
Каждый элемент строки - тип поля в csv-файле. Дальше объединяете как и описали, в выходном шейпе будут поля соответствующего типа. Статья в тему. Отпишитесь потом, получилось ли. У меня, вроде, сработало. Про dbf - проблему не понял, можно поподробнее.

Re: проблема объединения слоя с csv

Добавлено: 26 янв 2011, 15:46
holden
Все удалось, благодарен Вам!

Про dbf напишу позже. Скажите, а возможно обойти ограничение на 10 символов наименования поля?

Re: проблема объединения слоя с csv

Добавлено: 26 янв 2011, 16:07
Voltron
holden писал(а):Скажите, а возможно обойти ограничение на 10 символов наименования поля?
Нельзя, это ограничение формата DBF.
Попробуйте SpatiaLite, там нет такого ограничения, но может пострадать совместимость с другим ПО.