條形碼閱讀器為我提供了以下顯示在文本框中的數字字符串7612345203508。在數字字符串中是以下位置的價格76123452(0350)8現在我想用這個例子中的點來顯示它761234520350 Fr. 03.50我怎樣才能正確地表示這一點?我的代碼如下所示:VS2010 C#textBox1.Text = axOPOSScanner1.ScanDataLabel; //PreistextBox1.Text += "\t" + "Fr." + axOPOSScanner1.ScanDataLabel.Remove( 0, 8 );輸出: 7612345203508 Fr.03508
2 回答

猛跑小豬
TA貢獻1858條經驗 獲得超8個贊
嘗試格式化和字符串插值。如果價格由4末尾的數字組成
string source = axOPOSScanner1.ScanDataLabel;
textBox1.Text =
$"{source}\tFr. {decimal.Parse(source.Substring(source.Length - 5, 4)) / 100:00.00}";
對于Visual Studio 2010(不支持字符串插值)
string source = axOPOSScanner1.ScanDataLabel;
textBox1.Text = string.Format("{0}\tFr. {1:00.00}",
source,
decimal.Parse(source.Substring(source.Length - 5, 4)) / 100);

江戶川亂折騰
TA貢獻1851條經驗 獲得超5個贊
對于此示例,這應該可以解決問題:
textBox1.Text += "\t" + "Fr. " + axOPOSScanner1.ScanDataLabel.Substring(8, 2) + "." + axOPOSScanner1.ScanDataLabel.Substring(10, 2);
但請考慮到更長或更短的 ScanDataLabel 不會為您提供正確的數字或拋出ArgumentOutOfRangeException
.
- 2 回答
- 0 關注
- 195 瀏覽
添加回答
舉報
0/150
提交
取消