我想用Gujarati
开发Windows form application
c#.net
。但我有问题
1)计算古吉拉特语中的两个数字。我解决了这个代码
public static double ParseValue(string value)
{
return double.Parse(string.Join("",
value.Select(c => "+-.".Contains(c)
? "" + c: "" + char.GetNumericValue(c)).ToArray()),
NumberFormatInfo.InvariantInfo);
}
但是这个代码提供了英文数值。
但是当计算两个Guajarati no时,我得到英文输出。像这样:
Label1.Text = (ParseValue(TextBox1.Text) + ParseValue(TextBox2.Text)).ToString();
//Output is Like this
// ૩ + ૬ = 9
那我如何得到古吉拉特语数字输出
2)Microsoft Access
中Gujarati Value的数据类型是什么?对于Numeric,DateTime ETC ..
您可以使用NumberFormat
的CultureInfo
属性来查找有关文化数字格式的信息,包括:
然后,您可以使用此信息将您的号码转换为本机格式。
例如:
public string GetNativeRepresentation(double value)
{
var format = CultureInfo.GetCultureInfo("gu-IN").NumberFormat;
return String.Join("", value.ToString(CultureInfo.InvariantCulture)
.Select(x =>
{
if ("1234567890".Contains(x.ToString()))
return format.NativeDigits[x - '0'];
else if (x == '-')
return format.NegativeSign;
else if (x == '.')
return format.NumberDecimalSeparator;
else
return x.ToString();
}));
}
例如:
MessageBox.Show(GetNativeRepresentation(-1234567890.123));
显示:
-૧૨૩૪૫૬૭૮૯૦.૧૨૩
最好存储独立于文化的每种类型,例如,使用标准语言类型,如int
,double
和DateTime
,然后在使用.Net Framework本地化机制的应用程序中,显示值的本地化版本。