title: Why does png format get changed when on iPhone or iPad Device
body: <p>Interesting one this.  I did do a bit Googling on the it but here we go.  I have this png file.  What I want to do is have it on my iPhone and send it to a server application on Windows.  I use something like this:</p>
  
  <pre><code>NSString *filePath = [[NSBundle mainBundle] pathForResource:IconFile ofType:@"png"]; 
  
  NSData *icon = [[NSData alloc ] initWithContentsOfFile:filePath];             
  NSLog(@"File path is %@",filePath);
  NSLog(@" Bytes to send in Icon File %d",icon.length);
  </code></pre>
  
  <p>Now this works just fine when I am on the iPhone simulator. When I go to the device though the png format grows in size.   For example I had one that was 2514 bytes and went up to 2652 bytes.  When I transmit this file - its not able to be read by the Windows app.</p>
  
  <p>So I assume that when a png file gets copied over in the resource bundle - it must get optimised or something.  I can get round it by changing the extension to say .txt - then the file doesnt change.</p>
  
  <p>Does anyone know why that is ?  And can you prevent it being changed as I'd rather keep the correct extension.  I have seen that png formats need to be converted when you get them from the iPhone but I dont know why this would happen when you upload one and it doesn't work in the simulator mode.  Happens with both iPhone and iPad at iOS 5.</p>