title: How to convert String variable back in byte[] in JAVA
body: <p>I have the following code to zip and unzip the String:</p>
  
  <pre><code>public static void main(String[] args) {
      // TODO code application logic here
      String Source = "hello world";
      byte[] a = ZIP(Source);
      System.out.format("answer:");
      System.out.format(a.toString());
      System.out.format("\n");
  
  
      byte[] Source2 = a.toString().getBytes();
  
      System.out.println("\nsource 2:" + Source2.toString() + "\n");
  
      String b = unZIP(Source2);
      System.out.println("\nunzip answer:");
      System.out.format(b);
      System.out.format("\n");
  
  
  }
  
    public static byte[] ZIP(String source) {
        ByteArrayOutputStream bos= new ByteArrayOutputStream(source.length()* 4);
  
        try {
            GZIPOutputStream outZip= new GZIPOutputStream(bos);
            outZip.write(source.getBytes());
            outZip.flush();
            outZip.close();
        } catch (Exception Ex) {
        }
        return bos.toByteArray();
    }
  
  public static String unZIP(byte[] Source) {
      ByteArrayInputStream bins= new ByteArrayInputStream(Source);
      byte[] buf= new byte[2048];
      StringBuffer rString= new StringBuffer("");
      int len;
  
      try {
          GZIPInputStream zipit= new GZIPInputStream(bins);
          while ((len = zipit.read(buf)) &gt; 0) {
               rString.append(new String(buf).substring(0, len));
          }
          return rString.toString();
      } catch (Exception Ex) {
         return "";
      }
  }
  </code></pre>
  
  <p>When "Hello World" have been zipped, it's will become [B@7bdecdec in byte[] and convert into String and display on the screen. However, if I'm trying to convert the string back into byte[] with the following code:</p>
  
  <pre><code> byte[] Source2 = a.toString().getBytes();
  </code></pre>
  
  <p>the value of variable a will become to [B@60a1807c instead of [B@7bdecdec . Does anyone know how can I convert the String (a value of byte but been convert into String) back in byte[] in JAVA?</p>