2012-12-19 6 views
3

BigInteger 유형을 System.Numerics에서 사용하고 있습니다. 예를 들어BigInteger 변수를 BitArray에 쓰거나 그 반대로

:

Dim Mult17 As BigInteger = BigInteger.Parse("1453453452342347") 

질문 :

  1. BigInteger을 감안할 때, 어떻게 그것은 BitArray로 변환합니까? 는 (분명히 내가 BitArray 바이너리 10101 ... BigInteger 변수에 저장된 숫자의 표현을 유지하기 원하고, 나는 그것이 하나의 방법 또는 반대 방법으로 저장 한 할 수있는 옵션을 가지고 싶습니다.)

  2. 또한 BitArray에서 BigInteger으로 되돌아 가야합니다.

부호가없는 점에 유의하십시오. 양의 정수 만 처리합니다. VB.NET 또는 C# 예제가 좋을 것입니다. 고맙습니다.

답변

5

.ToByteArray()을 사용하여 BigInteger를 byte []로 가져올 수있는 것처럼 보입니다.

여러분에게 운이 좋은데, BitArray는 바이트 [0123]를 constructor parameter으로 취합니다. 뒤로 이동하려면

, BitArray는 바이트 []이 extension을 사용, 그것은 작동해야처럼 보이는 생성자

에 BigInteger로 전달합니다. 전체 공개, 나는 이것을 시험하기에는 너무 게을 렀다.

+0

음, 매우 흥미 롭습니다. 첫 번째 질문은 ByteArray가 BitArray와 어떤 관련이 있습니까? 비트 배열에 비트를 "합리화"할 수 있습니까? biginteger의 내부 구조에 대해 전혀 몰라? – Pam

+1

@Pam : 왜 당신은 단순히 그것을 보지 않으시겠습니까? 힌트 : Biginteger 5 .ToArray는 하나의 요소를 갖는 배열을 제공하고 요소 값은 5 ... – igrimpe

+0

@igrimpe, 감사합니다. – Pam