Я попытался изменить единственную кодировку источника данных шейп-файла через свойства, а также Как кодировать шейп-файлы из LATIN1 в UTF-8? но это не меняет его.
Без сохранения проекта QGIS я не могу напрямую изменить кодировку источника данных shapefile?
Я также попробовал этот код, он показывает кодировку изменений, но когда я снова открываю шейп-файл, он показывает ту же старую кодировку системы:
for layer in QgsMapLayerRegistry.instance().mapLayers().values():
layer.setProviderEncoding(u'UTF-8')
layer.dataProvider().setEncoding(u'UTF-8')
print layer.name(), layer.dataProvider().encoding()
(Я не сохраняю проект QGIS, просто получаю доступ и сохраняю шейп-файл напрямую. Когда я сохраняю проект и выполняю эту задачу, он работает правильно )
Save As...
опцию?