2013-06-19 3 views
0

16 진수 문자를 이와 같이 구분하는 데 도움이 필요합니다. 나는 이것이 작동하지 않는다는 것을 안다. 내가 418을 입력하면 내 대답은 20C가되어야합니다. 임 사용하여 C#을 감사16 진수 나누기

private void button23_Click(object sender, EventArgs e) //calculator 
    { 

     { 
      offset = textBox10.Text; 

      offset hex/2 = offset2 


      textBox11.Text = offset2; 

     } 
    } 
+0

[다시 C# 변환 헥스하는 정수]의 중복 가능성 (http://stackoverflow.com/questions/1139957/c-sharp-convert-integer-to-hex-and-back-again) –

답변

1

NumberStyles은 약간 난해하지만 당신이 그것을 할 방법은 다음과 같습니다 물론

int offset = int.Parse(textBox10.Text, System.Globalization.NumberStyles.HexNumber); 
int offset2 = offset/2; 
textBox11.Text = String.Format("{0:X}", offset2); 

, 당신은 사용자 입력의 더 많은 처리 및 유효성 검사를해야 할 수도 있습니다. int.TryParse 및 다른 int 크기 (예 : Int64)도 확인하십시오.

+0

위대한 작품. 지금 나는 그것을하는 방법에 서있다. 감사합니다 – DARCOM8

0

int.Parse을 사용하여 16 진수 문자열을 int으로 변환하고 필요한 산술 연산을 수행 한 다음 ToString을 사용하여 16 진수 문자열로 다시 변환 할 수 있습니다.

string offset = textBox10.Text; 
int val = int.Parse(offset, System.Globalization.NumberStyles.HexNumber); 
int div = val/2; 
string offset2 = div.ToString("X"); 
textBox11.Text = offset2; 
+0

이것은 또한 할 일이 다른 부분을 위해, 위대한 작품. 고맙습니다 – DARCOM8