Console.ReadLine()
を入力に使用しているため、変換文字列を浮動させようとしています。C#ReadLine float
Console.ReadLine()
は文字列値のみを受け入れますが、変換が必要です。私はそれをどのようにすることができますか?
ありがとうございます。あなたは何ができるか入力された文字列値
double input = Convert.ToDouble(Console.ReadLine())
Console.ReadLine()
を入力に使用しているため、変換文字列を浮動させようとしています。C#ReadLine float
Console.ReadLine()
は文字列値のみを受け入れますが、変換が必要です。私はそれをどのようにすることができますか?
ありがとうございます。あなたは何ができるか入力された文字列値
double input = Convert.ToDouble(Console.ReadLine())
float val = float.Parse(Console.ReadLine());
Console.WriteLine(val);
OR
float val2;
if (!float.TryParse(Console.ReadLine(), out val2))
{
Console.WriteLine("Not a valid float");
}
else {
Console.WriteLine(val2);
}
使用Convert.ToDouble()
はfloat.TryParseを使用しています。それは誰かのように見えるはずです。
float fl;
float.TryParse(Console.ReadLine(), out fl);
それが動作するはずですが、あなたはまた、それが解析されない場合は、警告がありますように、if文でtryparseを使用する置くことができます。このように:
float fl;
if(!float.TryParse(Console.ReadLine(), out fl)){
Console.WriteLine("It didn't parse");
}
これは問題を解決するはずです。正しい値が入力されるまで、私が求めて保つためにdo..while
ループでdouble.TryParse
を使用することをお勧め
を変換する
:
double input = 0.0;
do {
Console.WriteLine("Please enter floating point value");
}
while (!double.TryParse(Console.ReadLine(), out input))
をあなたの最初の文では、あなたは 'Console.TryParse'を言うが、あなたのコードは、あなたが'意味することを示していますfloat.TryParse' – DWright
ありがとうございます。申し訳ありませんが、私はそれを台無しにしたことに気付きませんでした。 –