title: How can I convert a BigInteger String to an ASCII String?
body: <p>I have the two inverse inverse functions:</p>
  
  <pre><code>public static BigInteger stringToBig(String message) {      
      StringBuilder sb = new StringBuilder();
      for (char c : message.toCharArray()) {
          sb.append((int)c);
      }
  
      return new BigInteger(sb.toString());
  }
  
  public static String bigStringToString(String string) {
      StringBuilder result = new StringBuilder();
      for (int x = (string.length() % 3 - 3) % 3; x &lt; string.length(); x += 3) {
          int chr = Integer.parseInt(string.substring(Math.max(x, 0), x + 3));
          result.append(Character.toString((char) (chr)));
      }
      return result.toString();
  }
  </code></pre>
  
  <p>My goal is to take the string from </p>
  
  <blockquote>
    <p>"This is my message"</p>
  </blockquote>
  
  <p>Convert it to <code>"8410410511532105115321091213210910111511597103101"</code></p>
  
  <p>and then convert it back to <code>"This is my message"</code></p>
  
  <p>I've tried the following but get <code>"????is?[ÕÒ?o??ge"</code> back as an output from <code>bigStringToString</code></p>
  
  <pre><code>String text = String.valueOf(stringToBig("This is my message"));
  System.out.println(text);
  System.out.println(bigStringToString(text));
  </code></pre>
  
  <p>What's wrong with my conversion back?</p>