У меня есть огромный список слоев в проекте, которые названы на иностранном языке. Я хочу перевести и добавить английское название к имени.
Когда я щелкаю правой кнопкой мыши по слою и выбираю Properties -> General
и изменяю имя слоя, оно отображается в дереве слоев, но исходный файл остается прежним.
Есть ли способ изменить имя исходного файла из QGIS?
Их так много, что поиск их всех в моих папках займет слишком много времени.
Ответы:
Для этого вам необходимо: i) удалить слой из ToC, ii) переименовать файлы, которые соответствуют Shapefile (т. Е. Shp, dbf, shx, prj и т. П.), И iii) загрузить переименованный слой в QGIS. Но нам нужно автоматизировать такой рабочий процесс!
Если вы посмотрите на шаги, они похожи на то, что делает плагин Table Manager. Итак, я адаптировал код такого плагина для переименования Shapefiles, вы можете скачать его здесь .
Вы можете использовать его следующим образом (сначала попробуйте небольшой проект резервного копирования, чтобы увидеть, как он работает):
Скопируйте следующий фрагмент кода:
Это оно! Я тестировал его на GNU / Linux, QGIS 2.6. Порядок слоев в ToC меняется после запуска кода.
Дайте мне знать, если у вас есть какие-либо проблемы.
Если вам нужно сохранить порядок слоев, задайте новый вопрос, возможно, я смогу посмотреть на него :).
источник
Для пользователей R я написал быструю функцию R, которая пакетным образом переименовывает файл .shp и все связанные файлы. Это довольно просто, нет проверки ошибок и т. Д., Поэтому, если это не поможет, вам нужно будет провести небольшое расследование.
источник
Если у вас есть согласованная схема их переименования, вы можете сделать это в скрипте Python. Одним из методов в python является os.rename (src, dest) . Конкретные детали будут зависеть от алгоритма переименования файлов. Это для переименования реальных файлов, а не только имен слоев в оглавлении.
В противном случае, я не знаю альтернативы их переименованию вручную, так как вы должны их перевести. Теоретически вы могли бы создать словарь переводов на python, но это, вероятно, потребовало бы столько же времени для написания кода, как и ручное. Также имейте в виду, что переименование файлов само по себе нарушит источники данных. Переименование только имен слоев в оглавлении должно быть в порядке, но я не так знаком с QGIS, как Arc.
источник
Я предлагаю использовать эту программу для переименования ваших файлов http://www.bulkrenameutility.co.uk/Main_Intro.php . Он открыт и прост в использовании. После того, как вы переименовали свой файл, вы должны открыть в текстовом редакторе файл проекта qgis (попробуйте notepad ++) и сделать то же самое найти и заменить.
источник