如何将字符串转换为C#中的数字?有什么不同的方法。字符串到数字
字符串到数字
回答
Int32.Parse Double.Parse Decimal.Parse
等
INT myVar的= int.Parse(字符串);
但是只使用Parse,如果传入的字符串不是数字,您将需要某种形式的异常处理。
这就是为什么你应该使用TryParse
然后你就可以有
int nr;
if (int.TryParse(mystring, out nr) == false) {
//do something as converting failed
}
+1给予“权威”参考! – ShinTakezou 2010-07-04 16:16:38
大多数数值元的有解析和TryParse方法,我建议使用这些。如果被分析的字符串的格式不被识别,则解析会抛出异常,而TryParse是容错的。
int num = int.Parse("1");
int num = 0;
if (int.TryParse("1", out num)) {
// do something here.
您还可以使用Convert.ToInt32等....
static void Main(string[] args)
{
String textNumber = "1234";
int i = Int32.Parse(textNumber);
double d = Double.Parse(textNumber);
decimal d2 = Decimal.Parse(textNumber);
float f = float.Parse(textNumber);
}
数值发送这些命令执行后:
textNumber = "1234"
i = 1234
d = 1234.0
d2 = 1234
f = 1234.0
在C#中,你可以将字符串转换为一个号码:
Convert.ToUInt32("123");
Convert.ToInt64("678"); // to long
Convert.ToDouble("123");
Convert.ToSingle("146");
你可以检查该网站的全部细节:http://msdn.microsoft.com/en-us/library/bb397679.aspx
有一点要注意的,解析十进制数时:
的.NET框架将使用Windows配置的小数分隔符。例如在德国,我们在美国编写“1.129.889,12”,即“1,129,889.12”。因此double.Parse(str)将表现不同。
但是,您可以指定IFormatProvider对象作为第二个参数(这也适用于ToString方法)。我打一个比方:
var ci = CultureInfo.InvariantCulture;
double a = double.Parse("98,89");
double b = double.Parse("98,89", ci);
Console.WriteLine(a.ToString(ci));
Console.WriteLine(b.ToString(ci));
我的电脑上的输出是:
98.89
9889
所以,如果你是例如读取配置文件时,使用一种数字格式的独立界面语言(这对配置文件有意义),一定要指定一个合适的IFormatProvider。
- 1. 将字符串添加到字符串的数字和数字
- 2. 数组[字符串]或字符串到字符串
- 3. Java - 字符串到数字
- 4. 字符串到字符串
- 5. 字节数组到字符串到字符串
- 6. 无符号字符数组到宽字符数组/字符串
- 7. 字符串到字符数组Java
- 8. Java字符到字符串
- 9. 字符到/和字符串
- 10. 将数字和字符串列表到单个字符串python
- 11. 得到字符串后的字符串的具体数字
- 12. 错误:“net.sf.sahi.plugin.DBClient”的Java构造函数带有参数“字符串,字符串,字符串,字符串”未找到
- 13. 字节到字符串或字符串到字节?
- 14. 字符串切片到字符串?
- 15. 字符串分割到字符串
- 16. 将字符串添加到字符串
- 17. Python字符串列表到字符串
- 18. 字符串分割到字符串
- 19. 字符串内部的Java字符串到字符串
- 20. JSON:字符串到数组
- 21. NPVariant到字符串数组
- 22. Json字符串到数组
- 23. 字符串到整数
- 24. NASM - 整数到字符串
- 25. 字符串到数组
- 26. 字符串到
- 27. 字母数字字符串
- 28. 字符串到字节数组
- 29. 字节数组到矢量字符串
- 30. 转换数字的字符串到NSTimeInterval
欢迎来到StackOverflow。请正确标记您的问题。 C和C#是非常不同的语言。 – Oded 2010-07-04 15:50:08