none
字串變數轉換數字 RRS feed

  • 問題

  • 小弟我最近寫程式遇到困難...

    舉例:

    string str_reg="3FF";

    int reg;

    前提 str_reg 這個字串變數為16進制的字串 (非固定同個16進制的字串)

    因為總不可能 reg = Convert.ToInt32("3FF"); --> 這樣寫死

    萬一 str_reg 有時為"123"或 "1FF"的話 

     是否有方法能將自定義的字串變數 str_reg 轉為數字?

    謝謝!


    2016年8月8日 上午 09:06

解答

  • 16 進位字串, 如果要轉換, 應該要用另外一個多載

    https://msdn.microsoft.com/zh-tw/library/zf50za27(v=vs.110).aspx

    如果沒有設定 NumberStyle 的話, 是沒辦法用 TryParse 轉換 16 進為字串的

      Int32.TryParse(y, NumberStyles.HexNumber , CultureInfo.CurrentCulture  , out x);


    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。

    2016年8月8日 下午 03:09
    版主
  • 啊不就把字串變數塞進去就好了嗎 ?

                int x;
                string y = "FF";
                x = Convert.ToInt32(y, 16);
               


    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。


    2016年8月8日 上午 09:16
    版主

所有回覆

  • 啊不就把字串變數塞進去就好了嗎 ?

                int x;
                string y = "FF";
                x = Convert.ToInt32(y, 16);
               


    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。


    2016年8月8日 上午 09:16
    版主
  • 保險一點也可以用這個方法 TryParse

    int number;
    bool result = Int32.TryParse("1FF", out number);

    https://msdn.microsoft.com/zh-tw/library/f02979c7(v=vs.110).aspx


    2016年8月8日 上午 10:00
  • 16 進位字串, 如果要轉換, 應該要用另外一個多載

    https://msdn.microsoft.com/zh-tw/library/zf50za27(v=vs.110).aspx

    如果沒有設定 NumberStyle 的話, 是沒辦法用 TryParse 轉換 16 進為字串的

      Int32.TryParse(y, NumberStyles.HexNumber , CultureInfo.CurrentCulture  , out x);


    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。

    2016年8月8日 下午 03:09
    版主
  • 提醒這位樓主, 如果你的問題已經可以解決, 請你可以回覆或是標示.

    這是一種尊重自己, 也是尊重別人的行為.

    我看了你過去的發問紀錄, 最後都沒告訴大家你是否解決了.


    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。

    2016年8月9日 上午 04:01
    版主
  • 版主您好,問題有解決了!

    請問標示是指勾勾嗎?

    因為剛看了一下過去發問紀錄,圖示顯示為勾勾

    以及分類在已答覆

    謝謝!


    • 已編輯 藍菇菇 2016年8月9日 上午 06:12
    2016年8月9日 上午 06:11
  • 感謝您的配合, 有些時候版主會決定標示解答, 但通常是因為發問者過了段時間沒有回覆我們才會這麼做.

    基本上我們比較希望由原發問者來標示.


    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。



    2016年8月9日 上午 06:50
    版主