-4
我想創建一個程序,將一個字符轉換成一個數字,乘以3,創建3個隨機數字,將加起來的值,然後顯示在一個文本框中分隔一個逗號。System.FormatException C#
我創建的隨機數字將在0到encodedValue
之間,將它們取平均爲k
,並在隨機數字除以k
,最後將其舍入爲整數。
a = rnd.Next(0, encodedValue);
b = rnd.Next(0, encodedValue);
c = rnd.Next(0, encodedValue);
k = (a + b + c)/encodedValue;
a /= k;
b /= k;
c /= k;
a = Math.Round(a);
b = Math.Round(b);
c = Math.Round(c);
我縮小代碼發現,這些3線是這個問題,我想這些數字的逗號添加到encodedString
,讓他們3位數字,並添加到數字的末尾:
encodedString += a.ToString("D3") + ",";
encodedString += b.ToString("D3") + ",";
encodedString += c.ToString("D3") + ",";
我收到錯誤
System.FormatException: Format specifier was invalid.
如果你告訴我們,你會得到什麼錯誤或預期的不工作,這將有助於。 – Jeff
請包括[最小,完整和可驗證示例](http://stackoverflow.com/help/mcve)。另請閱讀[我如何提出一個好問題](http://stackoverflow.com/help/how-to-ask)。 – Igor
那麼,顯然格式說明符是無效的,這意味着''D3「'不是爲'a','b'或'c'類型指定的有效格式。既然你沒有告訴我們這是什麼類型,它是任何人猜測實際類型是什麼,因此什麼是合法格式說明符。請發佈[mcve]完成這些變量的類型,我們可以提供幫助,但是您應該從這些3變量類型的'.ToString'文檔開始,它可能會告訴您什麼是法律格式說明符是,並且使用哪個說明符來獲得你想要的格式。 –