2

テキスト ファイルから読み取りを行っていますが、テキスト ファイルから読み取った値をint. 私はこれをc#でやっています。たとえば、ファイルから 4 を読み込みましたが、charそれは 4 ですが、それを単にキャストした場合int、値は 52 になると思います。そのchar値4を取得して4として保存するにはどうすればよいintですか?

4

4 に答える 4

4

文字を文字列に変換すると、 int.Parseint.TryParseConvert.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))
{
}
于 2012-11-16T05:10:34.397 に答える
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);
于 2012-11-16T05:10:41.243 に答える
2

You need Convert.ToInt32(string),

int res = Convert.ToInt32(yourcharvar.ToString());
于 2012-11-16T05:10:59.937 に答える
1

例外があればそれをキャッチするので、常に使用TryParseします。(trycatch ブロックが組み込まれています)
つまり、Safeです。

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");    
于 2012-11-16T05:13:49.837 に答える