问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

100财富给牛*之人!就没人知道在linux下用c语言如何将汉字的unicode编码转化为汉字吗?

发布网友 发布时间:2022-05-01 09:47

我来回答

4个回答

热心网友 时间:2023-10-03 03:20

 除了iconv命令,我们在linux系统下的man page的第三节还可以看到一组iconv函数。它们分别是
  iconv_t iconv_open(const char *tocode, const char *fromcode);
  size_ticonv(iconv_t cd, char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft);
  int iconv_close(iconv_t cd);
  iconv_open函数用来打开一个编码转换的流,iconv函数的作用是实际进行转换,iconv_close函数的作用就是关闭这个流。实际用法参见下面的例子,下面是一个将UTF-8码转换成GBK码的例子,我们假设已经有了一个uft8编码的输入缓冲区inbuf以及这个缓冲区的长度inlen。
  iconv_t cd = iconv_open( "GBK", "UTF-8");
  char *outbuf = (char *)malloc(inlen * 4 );
  bzero( outbuf, inlen * 4);
  char *in = inbuf;
  char *out = outbuf;
  size_t outlen = inlen *4;
  iconv(cd, &in, (size_t *)&inlen, &out,&outlen);
  outlen = strlen(outbuf);
  printf("%s\n",outbuf);
  free(outbuf);
  iconv_close(cd);

热心网友 时间:2023-10-03 03:20

试试这个四个函数,C 里面的,Linux 可用:
mbtowc
wctomb
mbstowcs
wcstombs
在 Linux 下试试看吧:
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
int main(void)
{
size_t cch;
char psz[1024];
wchar_t pwsz[] = { 0x52B3, 0x788C, 0x788C, 0 };
setlocale(LC_ALL, "");
cch = wcstombs(psz, pwsz, 1024);
if (cch != 0 && cch != -1) {
printf("%s", psz);
}
return 0;
}
zdl_361 说的 "utf8 劳碌碌" 不对,因为我也输出 "劳碌碌",而我是用 Unicode 编码的。在 Windows 上,char 是 ANSI,Unicode (wchar_t) 是 UTF-16;在 Linux 上,char 是 UTF-8,Unicode (wchar_t) 是 UTF-32。不过对于这个函数来说,在哪个平台上都不会因为字符编码而影响使用。

热心网友 时间:2023-10-03 03:21

我得知道这是什么编码。utf8?
解读完是乱码。
52B3788C788C你从哪里复制的?

热心网友 时间:2023-10-03 03:21

我也在找答案,有号的告诉我一声
如何用C语言实现汉字和Unicode编码的转换 求程序

但是如果调用标准库函数的话,在 Linux 下也是有效的。调用标准库函数,首先必须包含 locale.h 并调用 setlocale(LC_ALL, "") 后才能正确转换。Windows 下的 Multi-byte 是 ANSI 编码的,Wide charactor 是 Unicode (UTF-16) 编码,而 Linux 下的 Multi-byte 是 UTF-8 编码的,Wide charactor ...

请求在linux下C语言如何将汉字转换成UTF

} zdl_361 说的 "utf8 劳碌碌" 不对,因为我也输出 "劳碌碌",而我是用 Unicode 编码的。在 Windows 上,char 是 ANSI,Unicode (wchar_t) 是 UTF-16;在 Linux 上,char 是 UTF-8,Unicode (wchar_t) 是 UTF-32。不过对于这个函数来说,在哪个平台上都不会因为字符编码而影响使用。

各位大侠: 在linux下如何用C实现汉字转unicode码。比如:“中国”转成...

中文编码不少,没功夫全写出来(也写不全),UTF-8是我平时用的。在开源环境中,这个根本不是问题,可以参考zh-autoconvert的源代码:http://ftp.de.debian.org/debian/pool/main/z/zh-autoconvert/zh-autoconvert_0.3.16.orig.tar.gz 它提供了多种中文编码间相互转换的C语言代码,找你需要的...

linux下c/c++ unicode字符串转为汉字输出,高分求答案

ascll码0~33有一半是控制字符,肯定显示不了的我就不说了 linux下字符乱码首先想到的就是编码问题,Unicode不行就试试UTF-8等,

linux下编码转换问题,C语言实现,使用iconv函数族

1、iconv的含义是将一个抽象的符号的编码进行转换。但是如果一个符号比如“个”,可能在BIG5的编码中不存在(繁体字中不同)GBK包含的是简体字,BIG5包含的是繁体字,Unicode包含全部,所以 GBK-&gt;Unicode,Big5-Unicode (总是OK)Unicode-&gt;GBK (当里面仅包含英文及简体时OK)Unicode-&gt;BIG5 (当里面仅...

在Linux下,用什么命令或工具,可以把文件中全部汉字转换成"\uXXXX"的...

用python吧, 用来做自动化处理不错 !/usr/bin/python coding=utf8 str=u"汉字"print str.encode('utf8')下边是个例子 处理文件用 f=file('test.txt')参考资料:www.qvms.net

用gcc编c语言怎样输入中文

scanf()可以;char s[100];scanf("%s", s);printf("%s", s);中文有多种编码:ansi, unicode, UTF-32, ...每种编码,每个汉字占用的字节不太相同。我没有在linux下用过汉字,不知道,scanf默认是哪种编码(windows下是 ansi)(感觉linux下也应该是ansi,因为太多还是处理英文字符)ansi的...

python的英文的unicode多少(python中文unicode编码)

现代操作系统和大多数编程语言都直接支持Unicode。 现在,捋一捋ASCII编码和Unicode编码的区别:ASCII编码是1个字节,而Unicode编码通常是2个字节。 字母A用ASCII编码是十进制的65,二进制的01000001; 字符0用ASCII编码是十进制的48,二进制的00110000,注意字符'0'和整数0是不同的; 汉字已经超出了ASCII编码的范围,用...

Python2.7 中文字符编码,使用Unicode时,选择什么编码格式

如果是在我的环境下,也就是linux utf-8环境下一个utf-8显示终端,能显示成“汉字”的这坨东西,它实际上是以utf-8编码的“汉”字和“字”字两个unicode字符。它们的真实字符值就是u'\u6c49\u5b57'(内码),可以用"汉字".encode("hex")来查看当前终端下(utf-8编码值)的十六进制码。。所以...

python中unicode编码有多少位(2023年最新分享)

现代操作系统和大多数编程语言都直接支持Unicode。 现在,捋一捋ASCII编码和Unicode编码的区别:ASCII编码是1个字节,而Unicode编码通常是2个字节。 字母A用ASCII编码是十进制的65,二进制的01000001; 字符0用ASCII编码是十进制的48,二进制的00110000,注意字符'0'和整数0是不同的; 汉字已经超出了ASCII编码的范围,用...

财富是给有思想的人准备的 以下式神中能给人带来财富的是 创鑫财富牛1号收益如何 财富牛还能用吗 财富牛配资是真的吗 给人带来财富的是 财富是留给有准备的人 能给人带来财富的图片 给人带来财富和幸运的图片
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
交通事故致人死亡,该如何处理? 爱普生LQ1600KIIIH 断色带 爱普生针式打印机LQ1600KⅢH近两月来总频繁中断打印,同时电脑显示是通讯... ACQUA DI PARMA 帕尔玛之水 蓝色地中海系列 桃金娘加州桂中性淡香水 E... 女士香水推荐-ACQUA DI PARMA 帕尔玛之水 优雅木兰女士浓香水 EDP 50... ACQUA DI PARMA帕尔玛之水克罗尼亚系列中性香水套装-适用对象 帕尔玛 | 必须拥有的小众沙龙香 ACQUA DI PARMA/帕尔玛之水克罗尼亚系列黑调男士古龙水-适用对象 ACQUA DI PARMA 帕尔玛之水 克罗尼亚系列 风度中性古龙水 EDC 20ml... ACQUA DI PARMA/帕尔玛之水-绅士男士古龙水EDC 情侣空间的纪念日名称可以改吗 我不小心把我男票的生日名称填成了“0生日” 变得和我生日名称一样 typedef的用法 qq情侣空间纪念日生日名称是0怎么改 如何用zlib解压gzip数据 有如下代码: 2.#include &lt;string&gt; 和#include &lt;cstring&gt; vivo颜色反转能设置快捷方式吗 氧化锆陶瓷的种类特点 QQ宝贝、Q宠企鹅怎么卸载? 怎么把Q宠企鹅那个流氓软件删掉? 什么是全稳定氧化锆 拷贝构造函数、构造函数和赋值语句的区别 我的电脑被别人安装了Q宠企鹅我想卸载它可我连QQ都卸载了还是没把它卸载下去求指点啊 PSZ是什么 PSZ是什么意思 Q宠企鹅怎么删除电脑程序 常见一些变量名前缀加上psz什么意思?比如char*pszBuffer,这是什么意思? 我不知到怎么卸载q宠企鹅,试着在它图标上点击右键用360损粹其文件能达到卸载的目的吗? 桌面上的q宠企鹅没了怎样卸载 怎样卸载q宠企鹅 typedef struct {...}*Pstr; 这个指针是什么意思? 高级经济师业务能力电子化考试有什么样 成为一名高级经济师需要哪些 电脑如何装双系统,D盘如何改成系统盘 我的系统在D盘中 可C是默认的系统盘 如何将D盘改为系统盘啊? 什么是pcb电路图 找一款最简单的手机日历,只要能查看日期的就行了,不需要其它功能的。 请问PCB在电子行业中到底代表什么? 电路设计和画电路板不是一回事吗 请问下各位大侠,电路板与PCB板有什么区别,我想日后能学会修理电路板我应该进什么样的公司和从事什么岗位 我们每天在手机上看到的日历是什么历 电子工程师和pcb设计工程师一样么 高频PCB到底能算哪种电路板?是印刷的吗? 电压力锅不停的喷气怎么回事 为什么美的电压力锅做饭一直喷气 电压力锅做米饭时限压阀一直喷气,购买了一个月今天才有这种现象? 半球的电压力锅加热到最后一直向外喷气,怎么回事? 高压锅不是滋滋的间歇喷气怎么回事 太原哪里有硬笔书法培训? 广州有适合*学习书法国画的地方吗?本人喜欢安静,一定要氛围好!