如何在iOS中将图像转换为二进制格式?

San*_*ush 5 image binaryformatter ios

我正在开发一个项目,我需要将图像上传到我的服务器.我想将我的图像的二进制数据存储到数据库中的BLOB数据类型字段.因此,我需要将我的图像转换为二进制格式.这样它就可以保存在服务器数据库中.

那么如何将图像转换为二进制格式?请指教.

Bun*_*ylm 13

您可以使用CoreGraphics'方法UIImagePNGRepresentation(UIImage *image),返回NSData并保存它.如果你想再将其转换为UIImage使用[UIimage imageWithData:(NSData *data)]方法创建它.

演示将UIImage发送到服务器

- (void)sendImageToServer {
       UIImage *yourImage= [UIImage imageNamed:@"image.png"];
       NSData *imageData = UIImagePNGRepresentation(yourImage);
       NSString *postLength = [NSString stringWithFormat:@"%d", [imageData length]];

       // Init the URLRequest
       NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
       [request setHTTPMethod:@"POST"];
       [request setURL:[NSURL URLWithString:[NSString stringWithString:@"http://yoururl.domain"]]];
       [request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
       [request setValue:postLength forHTTPHeaderField:@"Content-Length"];
       [request setHTTPBody:imageData];

       NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request delegate:self];
       if (connection) {
       }
       [request release];
 }
Run Code Online (Sandbox Code Playgroud)