title: NSString initWithData returns null
body: <p>I am pulling data from a website via <code>NSURLConnection</code> and stashing the received data away in an instance of <code>NSMutableData</code>. In the <code>connectionDidFinishLoading</code> delegate method the data is convert into a string with a call to NSString's appropriate method:</p>
  
  <pre><code>NSString *result = [[NSString alloc] initWithData:data 
                                       encoding:NSUTF8StringEncoding]
  </code></pre>
  
  <p>The resulting string turns out to be a null. If I use the <code>NSASCIIStringEncoding</code>, however, I do obtain the appropriate string, albeit with unicode characters garbled up as expected. The server's <code>Content-Type</code> header does <em>not</em> specify the UTF-8 encoding, but I have attempted a number of different websites with a similar scenario, and there string conversion happens just fine. It seems like the problem only pertains to the given web service but I have no clue why.</p>
  
  <p>On a side note, is pulling web pages and data from an API good practice, i.e. buffering the data, converting into a string, and manipulating the string afterwards?</p>
  
  <p>Much appreciated!</p>