title: REST and JSON - converting string to JSON array
body: <p>I'm new to JSON and REST. I'm working with a server that returns strings like these:</p>
  
  <pre><code>[{"username":"Hello","email":"hello@email.com","credits":"100","twitter_username":""},{"username":"Goodbye","email":"goodbye@email.com","credits":"0","twitter_username":""}]
  </code></pre>
  
  <p>I've managed to print them out as strings on the console, but now I want to convert them into a JSON array. The code I have so far returns no errors, but I don't know what to put into the constructor for the new JSON array. I've been referring to a piece of code sent to me by a colleague, in which the constructor was new JSONArray(response) but he never told me what 'response' was.</p>
  
  <pre><code>import java.io.BufferedReader;
  import java.io.IOException;
  import java.io.InputStreamReader;
  import java.net.HttpURLConnection;
  import java.net.MalformedURLException;
  import java.net.URL;
  
  import net.sf.json.JSONArray;
  import net.sf.json.JSONObject;
  
  import sun.misc.BASE64Encoder;
  
  public class NetClientGet {
  
      public static void main(String[] args) {
  
        try {
  
          URL url = new URL("http://username:password@mobile.crowdedmedia.co.uk/index.php/api/users/get_users/");
          HttpURLConnection conn = (HttpURLConnection) url.openConnection();
          conn.setRequestMethod("GET");
  
          BASE64Encoder enc = new sun.misc.BASE64Encoder();
          String userpassword = "username:password";
          String encoded = enc.encode(userpassword.getBytes());
          conn.setRequestProperty("Authorization", "Basic " + encoded);
  
          if (conn.getResponseCode() != 200) {
              throw new RuntimeException("Failed : HTTP error code : "
                      + conn.getResponseCode());
          }
  
          BufferedReader br = new BufferedReader(new InputStreamReader(
              (conn.getInputStream())));
  
          String output;
          System.out.println("Output from Server .... \n");
          while ((output = br.readLine()) != null) {
              System.out.println(output);
          }
  
          JSONArray array = new JSONArray(output);
  
          for (int i =0; i &lt; array.size(); i++) {
              JSONObject row = array.getJSONObject(i);
              String user = row.getString("username");
              System.out.println(user);
          }
  
          conn.disconnect();
  
        } catch (MalformedURLException e) {
  
          e.printStackTrace();
  
        } catch (IOException e) {
  
          e.printStackTrace();
  
        }
  
      }
  }
  </code></pre>