※ 引述《chiuyiming (chiuyiming)》之銘言:
: 大家好!!
: 請教各位前輩,我把數字 2971 拆成 低位元 71 及 高位元 29 傳送,並傳送 'A'
: 作為來源的識別,我用 C# 接收寫成文字檔案後,計畫從文字檔中讀取字元取得他的16
: 進制數值,作高低位元組合,還原 2971 的動作,以便做後續的數學運算。但是在轉換
: 的部份,發生困難,懇請各位前輩指正錯誤,謝謝!!
: result_Low = Convert.ToInt16(str.Substring(position + 1, 1));
: result_High = Convert.ToInt16(str.Substring(position + 2, 1));
你的程式碼引發了 FormatException
Convert.ToInt16 功能 : ASCII 字串數字轉換成 Binary
所以, 以字串參數來說 ...
1.它的內容 : "0" ~ "9" 和 "+/-" 符號組成的數字字串, 不然會引發 FormatException
2.它的範圍 : 就只能在 "-32768" ~ "32768", 不然會引發 OverflowException
這樣, 你知道你的問題出在哪邊了嗎?
所以, 請用 BinaryReader ...
--
私が生存への道は
今も未來も唯一つ
私自身の闇黑のためだ
即ち「ハ・ル・ヒ」
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.133.168.73