C#에서 대규모 문자열 형식 정수를 16진수로 변환
문자열로 표현된 큰 정수를 16진수 형식으로 변환하는 것은 어려운 작업일 수 있으며, 특히 정수가 일반적인 변환 방법의 한계를 초과하는 경우 더욱 그렇습니다.
이 문제를 해결하려면 다음 사항을 고려하세요.
<code class="language-csharp">var s = "843370923007003347112437570992242323"; var result = new List<byte>(); result.Add(0); foreach (char c in s) { int val = (int)(c - '0'); for (int i = 0; i < result.Count; i++) { result[i] = (byte)((result[i] * 10 + val) % 256); val = (result[i] * 10 + val) / 256; } if (val != 0) result.Add((byte)val); } string hex = ""; foreach (byte b in result) hex = "0123456789ABCDEF"[b] + hex;</code>
코드 설명:
s
. result
하여 중간 계산 결과를 저장합니다. s
의 각 문자를 반복하여 정수 값으로 변환합니다. result
의 현재 값에 더합니다. result
에 저장합니다. result
에 추가하세요. result
을 반복하고 각 바이트를 해당하는 16진수로 변환하여 16진수 문자열 hex
을 생성합니다. 이 접근 방식을 사용하면 매우 큰 문자열 형식 정수도 C#의 16진수 형식으로 효율적으로 변환할 수 있습니다.
위 내용은 C#에서 대규모 문자열 형식 정수를 16진수로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!