Feature request #6059
add the ability to select character code when creating a new shape file
|Pull Request or Patch supplied:||No||Resolution:||fixed|
When creating new shape file, we can't select character code set.
We must create all new files in the UTF-8 .
There is an inconvenience if we can not use column names only a short time when it UTF-8 Because of a limitation of the length of the column name in the Shapefile.
So I want to add the ability to select character code when creating a new shapefile.
#1 Updated by Minoru Akagi about 5 years ago
- File qgsencodingfiledialog.png added
The encoding selectbox you wish is in the QgsEncodingFileDialog. It is displayed next to the "New Vector Layer" dialog.
As you know, the field name of DBF has some restrictions. As an example, it should be ASCII characters.
- Field name in .Dbf file http://forums.esri.com/Thread.asp?c=9&f=85&t=62319
- dBASE .DBF File Structure (NOTE linked page is about version 7) http://www.dbase.com/knowledgebase/int/db7_file_fmt.htm
- シェープファイルについて | 対応データ | ESRIジャパン株式会社 http://www.esrij.com/products/gis_data/shape/
If you have to use multibyte or non-ASCII characters in the field names, you should use "Attribute aliases" of QGIS. The aliases are stored in both the QGIS Layer Style File(.qml) and the QGIS project file(.qgs). It works well.
#4 Updated by Minoru Akagi almost 5 years ago
- File fieldnameencoding.patch added
- Allows users to use non-ASCII characters in the field names even if selected encoding is not UTF-8.
- Will increase the number of non-ASCII characters that users can use in the field name if users select the suitable encoding.
- Requires that "Ignore shapefile encoding" option is checked.
#6 Updated by Minoru Akagi over 4 years ago
I think no user selects ASCII-incompatible character encoding such as UTF-16 and UTF-32, to create shapefiles, because all encodings in this page are ASCII-compatible encodings.
Don't devs think it might be a good idea to implement the above and leave the decision whether to use non-ASCII characters to users?