title: Having errors on parsing JSON
body: <p>I'm trying to parse JSON from sdcard. When I try to execute to AsyncTask Simple Adapter, I'm getting following error:</p>
  
  <pre><code>The method execute(String...) in the type AsyncTask&lt;String,Void,SimpleAdapter&gt; is not applicable for the arguments (StringBuilder)
  </code></pre>
  
  <p>I spent more than a week to solve this code but I couln't made it.
  My code is:</p>
  
  <pre><code>public class Jeans extends Activity {
      private final String JSON_file = "country.json";
      File jsonFile;
  
      @Override
      public void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
          setContentView(R.layout.baby1_1);
  
          /** Getting Cache Directory */
          File cDir = ExternalStorage.getSDCacheDir( this, "json_files" );
  
          /** Getting a reference to temporary file, if created earlier */
          jsonFile = new File(cDir.getPath() + "/" + JSON_file) ;
  
          String strLine="";
          StringBuilder strJson = new StringBuilder();
  
          /** Reading contents of the temporary file, if already exists */
          try {
              FileReader fReader = new FileReader(jsonFile);
              BufferedReader bReader = new BufferedReader(fReader);
  
              /** Reading the contents of the file , line by line */
              while( (strLine=bReader.readLine()) != null  ){
                  strJson.append(strLine);
              }
          } catch (FileNotFoundException e) {
              e.printStackTrace();
          }catch(IOException e){
              e.printStackTrace();
          }
  
  
       System.out.println(strJson);
  
  
          /** The parsing of the xml data is done in a non-ui thread */
         // ListViewLoaderTask listViewLoaderTask = new ListViewLoaderTask();
  
          /** In here i'm getting the error */
          new ListViewLoaderTask().execute(strJson);
  
      }
  
  
      private class ListViewLoaderTask extends AsyncTask&lt;String, Void, SimpleAdapter&gt;{
  
          JSONObject jObject;
          /** Doing the parsing of xml data in a non-ui thread */
          @Override
          protected SimpleAdapter doInBackground(String... strJson) {
              try{
                  jObject = new JSONObject(strJson[0]);
                  CountryJSONParser countryJsonParser = new CountryJSONParser();
                  countryJsonParser.parse(jObject);
              }catch(Exception e){
                  Log.d("JSON Exception1",e.toString());
              }
  
              CountryJSONParser countryJsonParser = new CountryJSONParser();
  
              List&lt;HashMap&lt;String, String&gt;&gt; countries = null;
  
              try{
                  /** Getting the parsed data as a List construct */
                  countries = countryJsonParser.parse(jObject);
              }catch(Exception e){
                  Log.d("Exception",e.toString());
              }
  
              /** Keys used in Hashmap */
              String[] from = { "country","flag","details"};
  
              /** Ids of views in listview_layout */
              int[] to = { R.id.tv_country,R.id.iv_flag,R.id.tv_country_details};
  
              /** Instantiating an adapter to store each items
              *  R.layout.listview_layout defines the layout of each item
              */
              SimpleAdapter adapter = new SimpleAdapter(getBaseContext(), countries, R.layout.lv_layout, from, to);
  
              return adapter;
          }
  
          /** Invoked by the Android system on "doInBackground" is executed completely */
          /** This will be executed in ui thread */
          @Override
          protected void onPostExecute(SimpleAdapter adapter) {
  
              /** Getting a reference to listview of main.xml layout file */
              ListView listView = ( ListView ) findViewById(R.id.lv_countries);
  
              /** Setting the adapter containing the country list to listview */
              listView.setAdapter(adapter);
          }
      }
  
      @Override
      public boolean onCreateOptionsMenu(Menu menu) {
          getMenuInflater().inflate(R.menu.main, menu);
          return true;
      }
  }
  </code></pre>
  
  <p>Please someone solve this code for me please.</p>