title: encoded nsdata utf8 json, with accented char in ios
body: <p>i make a post request to a webserver that answer me with a JSON, this is the header of the response :</p>
  
  <pre><code>Cache-Control: private
  Content-Length: 826
  Content-Type: application/json; charset=utf-8
  Date: Wed, 04 Feb 2015 05:53:59 GMT
  Server: Microsoft-IIS/8.5
  Set-Cookie: ASP.NET_SessionId=0w0mile5232yoqqdlcdomwgf; path=/; HttpOnly
  X-Aspnet-Version: 4.0.30319
  X-Powered-By: ASP.NET
  </code></pre>
  
  <p>i parse the data response (NSURLConnection) and serialize the json :</p>
  
  <pre><code>NSArray *arrayFromServer = [NSJSONSerialization JSONObjectWithData:dataFromServerArray options:NSJSONReadingAllowFragments error:&amp;error];
  NSLog(@"string: %@",arrayFromServer);
  </code></pre>
  
  <p>output :</p>
  
  <pre><code>string: (
      {
      altitude = 0;
      battery = 100;
      "dev_last_contact" = 1423031944;
      "device_end_licence" = 1430398189;
      "device_type" = hw;
      "email_notification" = 0;
      "end_user_type" = 0;
      "fstk_cnt" = 15;
      "fstk_ts" = 0;
      heading = 0;
      id = 62;
      imei = 0123456789APPLE;
      inversegeo = "gsm_position ";
      label = "Test\Ufffd";
      latitude = "45.503731";
      "licence_level" = 2;
      "licence_status" = valid;
      "licence_type" = 1;
      longitude = "11.90365";
      "md5_image" = CA137B2CB710BC15C87BC6A54D305A2B;
      "movement_alert" = 0;
      "on_movement" = 0;
      "pos_acy" = 1977;
      "push_notification" = 0;
      refresh = 30;
      "req_pos_cnt" = 0;
      "req_pos_ts" = 0;
      rup = "user_device_list.aspx";
      "secure_area" = 0;
      "serial_nr" = IOS;
      speed = 0;
      "text_notification" = 0;
      timestamp = 1423031944;
      "url_image" = "http://XXXXX.XXXX.XXXX.XXXX/AppImages/1422966751507_62.jpg";
  }
  )
  </code></pre>
  
  <p>then i create the objectsArray like this:</p>
  
  <pre><code>devicesArray = [[NSMutableArray alloc] init];
  for(NSDictionary *eachDevice in arrayFromServer)
  {
      //NSLog(@"DEVICE: %@",eachDevice);
  
      Device *device = [[Device alloc] initWithJSONData:eachDevice];
  
      NSString *device_id = [NSString stringWithFormat:@"%ld",(long)[device deviceId]];
      [self.all_devices_id addObject:device_id];
  
      [devicesArray addObject:device];
  }
  </code></pre>
  
  <p>my object is very simple :</p>
  
  <pre><code>.h
  @interface Device : NSObject
  -(id)initWithJSONData:(NSDictionary*)data;
  ...
  
  .m
  -(id)initWithJSONData:(NSDictionary*)data{
  self = [super init];
  if(self){
      self.deviceId = [[data objectForKey:@"id"] integerValue];
  
      NSLog(@"data label : %@",[data objectForKey:@"label"]);
  
      self.label =  [data objectForKey:@"label"];
  ...
  </code></pre>
  
  <p>the output is :</p>
  
  <pre><code>data label : Test�
  </code></pre>
  
  <p>as you can see the "label" is converted in "Test\Ufffd" and then Test� but should be "Testè" 
  i have problem with the accented char, how can i encode this string correctly?</p>
  
  <p>Thanks.</p>