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

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

请有这方面开始经验的兄弟不要吝惜,多多指点!
(分不够可再加)

------解决方案--------------------
楼主先 看看关于 locale和国际化 的资料~
------解决方案--------------------
#include <locale.h>
#include <locale>
上面有关于本地化的相关的库函数
------解决方案--------------------
还可以去去开源社区,可以搜索搜索locale的相关实现的库,会有不同本地化实现的locale库打包下载.
------解决方案--------------------
Linux 国际化本地化和中文化:

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

看看这个系列文章 ~
------解决方案--------------------
开源社区有code.google.com
sorceforge.net
------解决方案--------------------
在内部使用ascii或者unicode
但所有模块之间的接口使用utf-8
对外接口也使用utf-8

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

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

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

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



------解决方案--------------------
1、所有字符和字符串都采用wchar_t或wstring;
2、所有字符和字符串采用utf-16编码;
------解决方案--------------------
补充一句:
大名顶顶的xerces-c(一个处理xml的开发包),为了支持多国语言就是采用wchar_t,wstring,并采用utf-16编码。
------解决方案--------------------
楼主应该好好看一下这些个编码的关系.

楼上的有些地方也不对.

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.
------解决方案--------------------
对,当然.唯一和ASCII不同的是,有时UTF-8是多个字节表示一个字符,如果你有计算字符个数之类的代码,需要做些改动.