步骤:
1.代码中gdal.SetConfigOption("DXF_ENCODING", "UTF-8"); 设置编码格式为UTF-8。
2.在head.dxf模板文件中修改第十六行ASNI_1252为UTF-8(没有head.dxf的https://trac.osgeo.org/gdal/changeset/41196到这个地址去下一个)
3.文件生成好了之后是UTF-8格式的,转换GBK格式,后面是转换代码
public static void changeEncoding (String inEncoding, String outEncoding, String inFileName, String outFileName){ try { BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(inFileName), inEncoding)); BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFileName), outEncoding)); String s = null; while ((s = reader.readLine()) != null) { writer.write(s,0, s.length()); writer.newLine(); } writer.flush(); writer.close(); reader.close(); }catch (Exception e){ e.printStackTrace(); } }
这个是调用代码,第一个参数是你当前文件的编码格式,第二个参数是要转换的编码格式,第三个参数是当前创建好的文件绝对路径,第四个参数不test11.dxf不要去创建,在代码中声明即可,但是文件夹你要是本地有的
然后就可以了
这个我是使用迅捷CAD编辑器打开的。我们中文编码格式是UTF-8的,而windows是GBK的,所以需要转换