请教:Linux和Windows跨平台C++编程中多国语言的问题?及跨平台交换数据文件等问题?

roger_77 2007-01-17 10:19:00
请教各位:
C++在Linux和Windows跨平台编程中,多国语言版本应该怎样实现,尤其是UTF-8如何影响编程和项目设置的?
还有就是C++的字符串数据中,如果是Linux和Windows跨平台需要支持多国语言,应该什么样的编码方式?ANSI,Unicode(如wstring, UTF-8等)?

请有这方面开始经验的兄弟不要吝惜,多多指点!
(分不够可再加)
...全文
956 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
roger_77 2007-03-14
  • 打赏
  • 举报
回复
看不到分数,请点击"管理"
roger_77 2007-03-14
  • 打赏
  • 举报
回复
想说一句,此问题还没最终找到合适的解决方案
最近在忙其它的事,这事就先放在一边了,以后再好好研究

要强行结贴了,
没办法啦……

redleaves 2007-03-01
  • 打赏
  • 举报
回复
楼主应该好好看一下这些个编码的关系.

楼上的有些地方也不对.

ISO10646就是UCS,是32位的
Unicode是16位的,相当于ISO10646的BMP部分.
UTF-16是针对Unicode产生的折中方案,为的是用Unicode的兼容形式来表达更多的UCS编码.形式和UTF-8是相似的.
UTF-8则是针对ASCII产生的折中方案,用ASCII兼容的形式来表式UNICODE/UCS编码.

用UTF-8,最大的好处是几乎完全不要修改字符串处理的代码,只要让显示字符的代码支持UTF-8就可以了,它可以兼容ASCII.
roger_77 2007-03-01
  • 打赏
  • 举报
回复
用UTF-8,最大的好处是几乎完全不要修改字符串处理的代码,只要让显示字符的代码支持UTF-8就可以了,它可以兼容ASCII.

----------------
真是如此吗?
具体应该在程序中操作?
redleaves 2007-03-01
  • 打赏
  • 举报
回复
对,当然.唯一和ASCII不同的是,有时UTF-8是多个字节表示一个字符,如果你有计算字符个数之类的代码,需要做些改动.
roger_77 2007-02-13
  • 打赏
  • 举报
回复
..........

uft-8不是很好的编码方案.
对中文来说, 2个字符变成3个,中国人没理由支持这个东东.

统一采用2字节编码...........

------------------------------

对于"htqx(航天奇侠)"这位兄弟的看法,偶持保留意见.

个人感觉UTF-8的编码方式更好,更易于兼容世界上各种语言,并且节省资源.
而采用uft-16的双字节编码,目前已经不够用来表示世界上所有的语言文字啦.
htqx 2007-01-29
  • 打赏
  • 举报
回复
uft-8不是很好的编码方案.
对中文来说, 2个字符变成3个,中国人没理由支持这个东东.

对程序来说,他和内码的编码方式实际一样,都是多字节编码,1个和2个,到现在1个和3个的结合,完全是没有进步. 而unicode编码,统一采用2字节编码,这样对程序开发来说可以轻松简易一点.

unicode编码有两个都是强制性的标准,一个用于程序设计内部表达数据的utf-16,一个是用于保存大量英文字母的utf-8标准, 中国人保存自己的文字,适合采用uft-16,因为这个标准可以减少每个字符一字节的需求量.

当然,代码如果同时支持这两种编码接口最好不过了.


muymuy 2007-01-29
  • 打赏
  • 举报
回复
补充一句:
大名顶顶的xerces-c(一个处理xml的开发包),为了支持多国语言就是采用wchar_t,wstring,并采用utf-16编码。
muymuy 2007-01-29
  • 打赏
  • 举报
回复
1、所有字符和字符串都采用wchar_t或wstring;
2、所有字符和字符串采用utf-16编码;
roger_77 2007-01-17
  • 打赏
  • 举报
回复
文章偶看了不少,感觉很难下手:
比如:一个字符串数据(它可能是中文或英文或中英文混合等等),字符串在某个平台(语言不定)下被程序写入文件中,而这个文件可能会被传输到不同的平台(语言不定)中,再由程序从文件中读取出来。

在不同的平台和不同的语言环境中,怎么才能保证正确传输及解析原来的C++字符串数据?

有这方面开发经验的兄弟,都来指点一下嘛!
分数好说
caocheng8230 2007-01-17
  • 打赏
  • 举报
回复
开源社区有code.google.com
sorceforge.net
jixingzhong 2007-01-17
  • 打赏
  • 举报
回复
Linux 国际化本地化和中文化:

http://www.lslnet.com/linux/docs/linux-2661.htm

看看这个系列文章 ~
caocheng8230 2007-01-17
  • 打赏
  • 举报
回复
还可以去去开源社区,可以搜索搜索locale的相关实现的库,会有不同本地化实现的locale库打包下载.
caocheng8230 2007-01-17
  • 打赏
  • 举报
回复
#include<locale.h>
#include<locale>
上面有关于本地化的相关的库函数
jixingzhong 2007-01-17
  • 打赏
  • 举报
回复
楼主先 看看关于 locale和国际化 的资料~
  • 打赏
  • 举报
回复
在内部使用ascii或者unicode
但所有模块之间的接口使用utf-8
对外接口也使用utf-8
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!
提供的源码资源涵盖了小程序应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!

3,881

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧