- 最後登錄
- 2024-11-2
- 在線時間
- 41 小時
- 註冊時間
- 2013-6-19
- 閱讀權限
- 20
- 精華
- 0
- UID
- 13205727
- 帖子
- 59
- 積分
- 28 點
- 潛水值
- 12560 米
| 關於16進位字串轉10進位數字,大大不妨考慮用Convert.ToInt64方法處理
Convert.ToInt64用法:
Convert.ToInt64(string value, IFormatProvider provider)
如果要處理輸入的字元限定為0-9 A-F, 可以在TextBox的Keypress用常規表示法處理
底下提供一個簡單做法供大大參考:- namespace WindowsFormsApplication1
- {
- public partial class Form1 : Form
- {
- public Form1()
- {
- InitializeComponent();
- }
- private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
- {
- string pattern = "[0-9A-Fa-f\b]";
- Regex rgx = new Regex(pattern);
- if (!rgx.Match(e.KeyChar.ToString()).Success)
- e.Handled = true;
- }
- private void button1_Click(object sender, EventArgs e)
- {
- textBox2.Text = Convert.ToInt64(textBox1.Text, 16).ToString();
- }
- }
- }
複製代碼 提醒:
1. 要使用常規表示法請記得- using System.Text.RegularExpressions;
複製代碼 2. Hex String 若超過 Int64, 記得處理Overflow... |
|