我正在阅读一个文本文件,我有一个从文本文件中读取的值,我想将其存储为int
。我在c#中这样做。例如,我从文件中读取4,但作为char
它是4,但如果我只是将其转换为int
,我认为它取值52。如何获取该值4并将其作为int
存储为4?
答案 0 :(得分:4)
将您的角色转换为字符串,然后您可以使用int.Parse,int.TryParse,Convert.Int32(string)将其转换为整数值。
char ch = '4';
int val = Convert.ToInt32(ch.ToString());
// using int.Parse
int val2 = int.Parse(ch.ToString());
//using int.TryParse
int val3;
if(int.TryParse(ch.ToString(), out val3))
{
}
答案 1 :(得分:4)
最简单的方法是减去'0'
:
char c = '4';
int i = (int)(c - '0');
或者您可以通过string
代替:
char c = '4';
int i = int.Parse(c.ToString());
请注意,如果您有字符串而不是字符,请执行以下操作:
string value = "4";
int i = int.Parse(value);
答案 2 :(得分:2)
int res = Convert.ToInt32(yourcharvar.ToString());
答案 3 :(得分:1)
总是使用TryParse
,因为它会捕获异常(如果有的话)。(它有内置的trycatch块)
换句话说,它是安全。
char foo = '4';
int bar;
if(int.TryParse(foo.ToString(), out bar)) //if converted returns TRUE else FALSE
Console.WriteLine(bar); //bar becomes 4
else
Console.WriteLine("The conversion is not possible");