Beispiel #1
0
 /// <summary>
 /// Converts B36 encoded string into Hexadecimal EPC
 /// </summary>
 /// <param name="b36"></param>
 /// <returns>Hex string</returns>
 public static String ConvertBase36ToHex(String b36)
 {
     StringBuilder sb = new StringBuilder(b36.ToUpper());
     char[] charArray = sb.ToString().ToCharArray();
     Array.Reverse(charArray);
     BigInteger big = new BigInteger(new string(charArray), 36);
     return big.ToString(16).ToUpper();
 }
		/// <summary>
		/// Returns BigInteger as System.UInt64 if possible.
		/// </summary>
		/// <param name="value"></param>
		/// <returns></returns>
		/// <exception cref="System.Exception">When BigInteger is too large to fit into System.UInt64</exception>
		public static ulong ToUInt64(BigInteger value)
		{
			if (object.ReferenceEquals(value, null))
			{
				throw new ArgumentNullException("value");
			}
			return System.UInt64.Parse(value.ToString(), System.Globalization.NumberStyles.Integer, System.Globalization.CultureInfo.CurrentCulture);
		}
Beispiel #3
0
 /// <summary>
 /// Converts Hexadecimal EPC into reversed B36 encoded string
 /// </summary>
 /// <param name="hex"></param>
 /// <returns></returns>
 public static String ConvertHexToBase36(String hex)
 {
     BigInteger big = new BigInteger(hex.ToUpper(), 16);
     StringBuilder sb = new StringBuilder(big.ToString(36));
     char[] charArray = sb.ToString().ToCharArray();
     Array.Reverse(charArray);
     return new string(charArray).ToUpper();
 }