I18N的常见问题
软件的I18N Dev是如何实现的?哪些又是I18N的问题,我们如何去定位这是I18N的问题还是Core问题或是L10N问题。
乱码问题的出现是怎么引起的?不同的应用在乱码上有哪些特点 软件的I18N Dev是如何实现的?
哪些又是I18N的问题,我们如何去定位这是I18N的问题还是Core问题或是L10N问 ...
姜彦甫 发表于 2013-8-14 15:23 http://bbs.51testing.com/images/common/back.gif
这个问题有点儿太大了……每种语言都有自己不同的G11N编码方式
举个很小的例子using System;
using System.Globalization;
using System.Threading;
public class FormatDate
{
public static void Main()
{
DateTime dt = DateTime.Now;
// Set the CurrentCulture property to U.S. English.
Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
// Display dt, formatted using the ShortDatePattern.
// and the CurrentThread.CurrentCulture.
Console.WriteLine(dt.ToString("d"));
// Create a CultureInfo object for German in Germany.
CultureInfo ci = new CultureInfo("de-DE");
// Display dt, formatted using the ShortDatePattern
// and the CultureInfo object.
Console.WriteLine(dt.ToString("d", ci));
}
}
这是C#中如何convert DateTime object 在如何去定位是I18N的问题还是Core问题或是L10N的问题上,我这么认为
I18N focus on code
L10N focus on language
如果在locale = en_US同时输入数据也不包含foreign code的情况下,依然有错,那自然是core bug了 对于国际化这一块,所有语言对输入输出都应该用UTF-8或UTF-16这两种编码方式,或者两者结合使用.
实际的开发过程中,往往与第三方的软件结合。在编码上有许多的顾虑,也容易出错。
比如vCops产品用到了Tomcat 和 数据库Oracle
Tomcat是西方开发的,,默认的编码方式是ISO-8859-1。我们的应用部署到Tomcat上以后,即使是用UTF-8去编码,但是Tomcat对接受的数据以ISO-8859的方式进行解码处理。这是后还要进行二次编码,把Tomcat处理的字节数据再编码成UTF-8,然后再解码
而Oracle需要注意配置的时候要用Unicode的字符集+UTF-8编码方式,即使数据库表中字段声明为nvar可接受国际化字符,也会出现乱码
日期格式这一块在编码上或许不尽相同,但是遵守的规则都是一样的,en_USde_DE zh_CN这些东东。 对于国际化这一块,所有语言对输入输出都应该用UTF-8或UTF-16这两种编码方式,或者两者结合使用.
实际的开 ...
姜彦甫 发表于 2013-8-15 10:26 http://bbs.51testing.com/images/common/back.gif
要集成其他软件的话,那就只能这样了
毕竟不是每个产品都考虑到了G11N这块
页:
[1]