title: NSString initWithData returns nil
body: <p>I work with server. I send request to the server and it answers me in <code>UTF-8</code> encoding, but when I try to decode byte array to the string, sometimes I get <code>nil</code> value. How can I decode this bytes array without any errors?</p>
  
  <pre><code>- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data 
  {
      [receivedData appendData:data];
  }
  - (void)connectionDidFinishLoading:(NSURLConnection *)connection
  {
      NSString * result_string=[[[NSString alloc] initWithData:receivedData encoding:NSNonLossyASCIIStringEncoding] autorelease];
      NSLog(result_string);
      //...
  }
  </code></pre>
  
  <p>when I convert using <code>NSUTF8StringEncoding</code> I get something like this:</p>
  
  <blockquote>
    <p>xt":"","newstype":[{"id":"1","name":"\u043f\u0440\u043e\u0438\u0441\u0448\u0435\u0441\u0442\u0432\u0438\u0435","ic</p>
  </blockquote>
  
  <p>when I convert using <code>NSNonLossyASCIIStringEncoding</code> I get something like this:</p>
  
  <blockquote>
    <p>xt":"","newstype":[{"id":"1","name":"происшествие","ic</p>
  </blockquote>
  
  <p>but sometimes, converting using <code>NSNonLossyASCIIStringEncoding</code>, I get errors. I don't know why</p>