当前位置:编程学习 > C#/ASP.NET >>

使用C#调用GDAL的OGR读取s57文件,中文乱码问题

由于工作需要,本人需要解析电子海图s57 文件,经过一个阶段的学习,本人打算采用 gdal/ogr 来解析,本人是做C#开发的,对于C++ 不是很了解,解析的时候实现的是 gdal/ogr 对C#的接口,采用ogrinfo.cs 文件进行解析,结果发现,基本的属性都能查询出来,但是,由于s57文件中包含中文文字,解析出来的内容却不是中文,而是乱码。
本人想通过编码转换,转成中文文字,但是都不行,最好的状态发现 前面的文字是正确的,而后面的不正确,例如"十万吨级锚地",最后通过转成Unicode编码,显示的是"十万吨级**"(**表示显示的是乱码) 最后两位不对,这是什么原因呢?
有没有高手处理过遇到过这个问题呢? 是如何解决的呢? --------------------编程问答-------------------- 我只在处理kml文件的时候用过gdal/ogr,不太熟悉

改用gb2312或gbk编码试试,仅供参考,友情帮顶—— --------------------编程问答-------------------- 我调用的是 gdal/ogr 中的样例代码 ogrinfo.cs 其中用到了个方法GetFieldAsString 该方法返回的是 char* 如果在C++下,可以考虑直接用 wchar* 强制转 就能显示正常的中文了,但是我是在C#下做的程序
gdal/ogr 采用的是swig封装,返回的是string 显示为乱码, 如何写程序才能使 乱码变中文呢?我怀疑swig封装之后会不会有损失? --------------------编程问答-------------------- 我看看你的源码行吗??zhiwei1ffs@163.com,一起研究。
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,