.Net中区域化数据如何影响软件的跨平台迁移能力?
- 内容介绍
- 文章标签
- 相关推荐
本文共计3023个文字,预计阅读时间需要13分钟。
如果您的程序希望在不同语言的操作系统上平滑移植,您必须正确理解和配置区域设置信息(CultureInfo)。对于习惯于中文Windows操作系统的开发者来说,这个问题往往容易被忽视。一旦忽视,可能会遇到意想不到的问题。
如果你的程序希望在不同语言的操作系统上平滑移植,你必须要正确理解和设置区域性信息(CultureInfo),这个问题对于习惯了中文windows 操作系统的我们来说,往往非常容易忽略。一旦忽略这个问题,我们在中文windows操作系统下运行正常的程序跑在英文或者其他语言的操作系统上,比如台湾或香港版本的windows下,轻则显示不对,重则逻辑错误。下面就谈谈这个区域性信息对程序移植性的影响
一、对字符串排序的影响在.net 下,字符串的大小比较并不是如C++那样按照字符串字符内码大小顺序从头到尾来比较的。由于我是从C/C++转过来的,我一直以来都以为.net 下字符串的比较规则和C++是一样的,直到有一天我的程序在英文操作系统下出错。
.net 下,字符串的排序受 System.Threading.Thread.CurrentThread.CurrentCulture 这个当前区域性信息影响,不同的区域性信息,字符串的排序结果会完全不同。
本文共计3023个文字,预计阅读时间需要13分钟。
如果您的程序希望在不同语言的操作系统上平滑移植,您必须正确理解和配置区域设置信息(CultureInfo)。对于习惯于中文Windows操作系统的开发者来说,这个问题往往容易被忽视。一旦忽视,可能会遇到意想不到的问题。
如果你的程序希望在不同语言的操作系统上平滑移植,你必须要正确理解和设置区域性信息(CultureInfo),这个问题对于习惯了中文windows 操作系统的我们来说,往往非常容易忽略。一旦忽略这个问题,我们在中文windows操作系统下运行正常的程序跑在英文或者其他语言的操作系统上,比如台湾或香港版本的windows下,轻则显示不对,重则逻辑错误。下面就谈谈这个区域性信息对程序移植性的影响
一、对字符串排序的影响在.net 下,字符串的大小比较并不是如C++那样按照字符串字符内码大小顺序从头到尾来比较的。由于我是从C/C++转过来的,我一直以来都以为.net 下字符串的比较规则和C++是一样的,直到有一天我的程序在英文操作系统下出错。
.net 下,字符串的排序受 System.Threading.Thread.CurrentThread.CurrentCulture 这个当前区域性信息影响,不同的区域性信息,字符串的排序结果会完全不同。

