我正在尝试发送一些文字和图片。我可以发送除图像之外的所有内容。问题是我不知道如何传递它。
<。>在.net soap webservice中,image声明为base64binary。目标c中的等价物是什么?我应该如何在目标c中传递它?这是我的代码(我正在为图像发送一个空字符串,此代码可以工作,但不会为图像列插入任何内容)
NSString *soapMessage = [NSString stringWithFormat:
@"<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"
"<soap:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\">\n"
"<soap:Body>\n"
"<insert_data xmlns=\"http://tempuri.org/\">\n"
"<id>%@</id>"
"<name>%@</name>"
"<lname>%@</lname>"
"<date>%@</date>"
"<image1>%@</image1>"
"</insert_data>"
"</soap:Body>\n"
"</soap:Envelope>\n",@"999",@"arif",@"yilmaz",@"2013-09-09",@""];
(void)imagePickerController:(UIImagePickerController *)picker
didFinishPickingMediaWithInfo:(NSDictionary *)info
{
[self.popoverController dismissPopoverAnimated:true];
[popoverController release];
NSString *mediaType = [info
objectForKey:UIImagePickerControllerMediaType];
[self dismissModalViewControllerAnimated:YES];
if ([mediaType isEqualToString:(NSString *)kUTTypeImage]) {
UIImage *image = [info
objectForKey:UIImagePickerControllerOriginalImage];
/* Setting the images to the correct viewer - AY */
if(image_counter==0){
imageView.image = image;
*datax = UIImagePNGRepresentation(image);
//********* I am getting the error here
// "Assigning to 'NSData' from incompatible type NSData * "
}
else if(image_counter==1){
imageView2.image = image;
}
else{
imageView3.image = image;
}
if(image_counter<3)
image_counter++;
/******************/
if (newMedia)
UIImageWriteToSavedPhotosAlbum(image,
self,
@selector(image:finishedSavingWithError:contextInfo:),
nil);
}
else if ([mediaType isEqualToString:(NSString *)kUTTypeMovie])
{
// Code here to support video if enabled
}
}
答案 0 :(得分:1)
尝试使用这个。这里给出你的图像并将你的图像数据发送到服务器。
UIImage *img = [UIImage imageNamed:@"imageName.png"];
NSData *data = UIImagePNGRepresentation(img);
NSString *soapMessage = [NSString stringWithFormat:
@"<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"
"<soap:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\">\n"
"<soap:Body>\n"
"<insert_data xmlns=\"http://tempuri.org/\">\n"
"<id>%@</id>"
"<name>%@</name>"
"<lname>%@</lname>"
"<date>%@</date>"
"<image1>%@</image1>"
"</insert_data>"
"</soap:Body>\n"
"</soap:Envelope>\n",@"999",@"arif",@"yilmaz",@"2013-09-09",data];
编辑.....
从这里删除指针变量......
datax = UIImagePNGRepresentation(image);