title: decode string encoded in utf-8 format in android
body: <p>I have a string which comes via an xml , and it is text in German. The characters that are German specific are encoded via the UTF-8 format. Before display the string I need to decode it. </p>
  
  <p><strong>I have tried the following:</strong></p>
  
  <pre><code>try {
      BufferedReader in = new BufferedReader(
              new InputStreamReader(
                      new ByteArrayInputStream(nodevalue.getBytes()), "UTF8"));
      event.attributes.put("title", in.readLine());
  } catch (UnsupportedEncodingException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
  } catch (IOException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
  }
  </code></pre>
  
  <p><strong>I have also tried this:</strong></p>
  
  <pre><code>try {
      event.attributes.put("title", URLDecoder.decode(nodevalue, "UTF-8"));
  } catch (UnsupportedEncodingException e) {
      // TODO Auto-generated catch block
      e.printStackTrace();
  }
  </code></pre>
  
  <p>None of them are working. How do I decode the German string</p>
  
  <p>thank you in advance.</p>
  
  <p><strong>UDPDATE:</strong></p>
  
  <pre><code>@Override
  public void characters(char[] ch, int start, int length)
          throws SAXException {
      // TODO Auto-generated method stub
      super.characters(ch, start, length);
      if (nodename != null) {
          String nodevalue = String.copyValueOf(ch, 0, length);
          if (nodename.equals("startdat")) {
              if (event.attributes.get("eventid").equals("187")) {
              }
          }
          if (nodename.equals("startscreen")) {
              imageaddress = nodevalue;
          }
          else {
              if (nodename.equals("title")) {
                  // try {
                  // BufferedReader in = new BufferedReader(
                  // new InputStreamReader(
                  // new ByteArrayInputStream(nodevalue.getBytes()), "UTF8"));
                  // event.attributes.put("title", in.readLine());
                  // } catch (UnsupportedEncodingException e) {
                  // // TODO Auto-generated catch block
                  // e.printStackTrace();
                  // } catch (IOException e) {
                  // // TODO Auto-generated catch block
                  // e.printStackTrace();
                  // }
                  // try {
                  // event.attributes.put("title",
                  // URLDecoder.decode(nodevalue, "UTF-8"));
                  // } catch (UnsupportedEncodingException e) {
                  // // TODO Auto-generated catch block
                  // e.printStackTrace();
                  // }
                  event.attributes.put("title", StringEscapeUtils
                          .unescapeHtml(new String(ch, start, length).trim()));
              } else
                  event.attributes.put(nodename, nodevalue);
          }
      }
  }
  </code></pre>