Skip to content

Commit

Permalink
#39 if windows, set encoding to the default one
Browse files Browse the repository at this point in the history
  • Loading branch information
Gustry committed Apr 1, 2015
1 parent 9932819 commit 88239e3
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 8 deletions.
8 changes: 3 additions & 5 deletions Controller/Process.py
Expand Up @@ -101,13 +101,11 @@ def openFile(dialog = None, osmFile = None, outputGeomTypes = None, whiteListCol
geojsonlayer = QgsVectorLayer(item['geojsonFile'],"temp","ogr")

writer = None
encoding = Tools.getDefaultEncoding()
if outputFormat == "shape":
writer = QgsVectorFileWriter(outputs[layer], "UTF-8", geojsonlayer.pendingFields(), osmGeom[layer], geojsonlayer.crs(), "ESRI Shapefile")
cpg_file = open(outputs[layer] + ".cpg", "w")
cpg_file.write("UTF-8")
cpg_file.close()
writer = QgsVectorFileWriter(outputs[layer], encoding, geojsonlayer.pendingFields(), osmGeom[layer], geojsonlayer.crs(), "ESRI Shapefile")
else:
writer = QgsVectorFileWriter(outputs[layer], "UTF-8", geojsonlayer.pendingFields(), osmGeom[layer], geojsonlayer.crs(), "GeoJSON")
writer = QgsVectorFileWriter(outputs[layer], encoding, geojsonlayer.pendingFields(), osmGeom[layer], geojsonlayer.crs(), "GeoJSON")

for f in geojsonlayer.getFeatures():
writer.addFeature(f)
Expand Down
4 changes: 3 additions & 1 deletion CoreQuickOSM/Parser/OsmParser.py
Expand Up @@ -173,7 +173,9 @@ def parse(self):
fields = QgsFields()
for key in layers[layer]['tags']:
fields.append(QgsField(key, QVariant.String))
fileWriter = QgsVectorFileWriter(layers[layer]['geojsonFile'],'UTF-8',fields,layers[layer]['geomType'],layers[layer]['vectorLayer'].crs(),'GeoJSON')

encoding = Tools.getDefaultEncoding()
fileWriter = QgsVectorFileWriter(layers[layer]['geojsonFile'],encoding,fields,layers[layer]['geomType'],layers[layer]['vectorLayer'].crs(),'GeoJSON')

#Foreach feature in the layer
for i, feature in enumerate(layers[layer]['vectorLayer'].getFeatures()):
Expand Down
15 changes: 13 additions & 2 deletions CoreQuickOSM/Tools.py
Expand Up @@ -25,7 +25,7 @@
import re
from API.Nominatim import Nominatim
from os.path import join,dirname,abspath
import os
import os, platform, sys
from shutil import *
from PyQt4.QtNetwork import QNetworkProxy
from qgis.utils import iface
Expand Down Expand Up @@ -284,4 +284,15 @@ def copytree(src, dst, symlinks=False, ignore=None):
else:
errors.extend((src, dst, str(why)))
if errors:
raise Error, errors
raise Error, errors

@staticmethod
def isWindowsOS():
return True if platform.system() == 'Windows' else False

@staticmethod
def getDefaultEncoding():
if Tools.isWindowsOS():
return sys.getdefaultencoding()
else:
return 'UTF-8'

0 comments on commit 88239e3

Please sign in to comment.