linux下libxml如何支持中文格式的显示。
来源:互联网 发布:果树修剪软件视频 编辑:程序博客网 时间:2024/06/08 17:48
基础知识:
1、要明白libxml库下是以utf-8格式来保存xml文件的。
2、 需要明白在调试程序时,使用的终端其支持那种格式的编码,不同的终端支持的编码格式是不同的。(否则会出现乱码)。
一个linux下自带的编码转换函数:
iconv( ...................................................);
自写的转换函数:
/*
功能 : 编码转换函数
参数1 : 被转换的编码
参数2 : 转换的目标编码
返回值: 转换过后的目标编码字符串
*/
char *convert(char *encFrom, char *encTo, const char *in)
{
static char bufin[1024], bufout[1024], *sin, *sout;
int mode, lenin, lenout, ret, nline;
iconv_t c_pt;
if ((c_pt = iconv_open(encTo, encFrom)) == (iconv_t)-1)
{
printf("iconv_open false: %s ==> %s/n", encFrom, encTo);
return NULL;
}
iconv(c_pt, NULL, NULL, NULL, NULL);
lenin = strlen(in) + 1;
lenout = 1024;
sin = (char *)in;
sout = bufout;
ret = iconv(c_pt, &in, (size_t *)&lenin, &sout, (size_t *)&lenout);
if (ret == -1)
{
return NULL;
}
iconv_close(c_pt);
return bufout;
}
我在调试程序时,理清楚的内容:
虚拟机ubuntu下的终端支持utf-8的编码格式;
在ultraedit中编写时使用的编码为gb2312
开发板的终端支持gb2312格式
而保存在xml文件中的格式为utf-8格式。
所以如果是在ubuntu下的终端调试程序时,你还将xml文件的utf-8格式的文件转换为gb2312的话,打印出来的就成乱码了。
如果 你在开发板上不将utf-8 格式的编码转换成gb2312格式的话,其也会成乱码。
- linux下libxml如何支持中文格式的显示。
- linux编译支持中文的ICONV及LIBXML
- Linux下Matlab的安装和中文显示支持
- linux下libxml工具的安装
- linux下libxml工具的安装
- linux下libxml工具的安装
- linux下libxml工具的安装
- Linux下curses界面如何显示中文
- 如何是linux服务器 下的tomcat能够支持中文文件名和中文路径
- QT如何支持中文显示
- linux下mysql支持中文的问题
- 如何做支持中文显示的CE6系统
- 如何做支持中文显示的CE6系统
- FreeBSD下的vi支持中文显示和编辑
- FreeBSD下的vi支持中文显示和编辑
- FreeBSD下的vi支持中文显示和编辑
- 让win下console支持ls的中文显示
- 4412开发板Linux-QT 下如何支持 HDMI 显示
- 资源汇整:53套免费的扁平化Icon设计
- Java - Collection
- 解决三星手机拍照后裁剪图片时横屏问题
- linux应用层定时器的使用
- POJ 3264 Balanced Lineup 线段树
- linux下libxml如何支持中文格式的显示。
- cxf入门学习
- c++接口演示
- cocos2d-x android平台切入后台纹理失效的解决方法
- BMR(Block Media Recovery)
- Apache CXF实战之八 Map类型绑定
- jQuery Mobile设计Android通讯录(第一章)
- 编码查询工具(进阶)
- Ubuntu下Android开发Git常用命令