以下のエラーのため、私のコードはコンパイルされません。
次のメソッドまたはプロパティ間で呼び出しがあいまいです: 'System.Math.Round(double、int)'および 'System.Math.Round(decimal、int)
私のコードは
Math.Round(new FileInfo(strFilePath).Length / 1024, 1)
どうすれば修正できますか?
ありがとう
問題は、整数除算を行い(int
にもなります)、int
をdouble
とdecimal
の両方に暗黙的に変換できることです。したがって、式の結果がこれらのいずれかになるようにする必要があります。 double
はおそらくあなたが望むものです。
Math.Round(new FileInfo(strFilePath).Length / 1024.0, 1)
Math.Round(new FileInfo(strFilePath).Length / 1024d, 1)
Math.Round((double) (new FileInfo(strFilePath).Length / 1024), 1)