将图像从其网址转换为64位字符串

时间:2018-03-16 11:08:10

标签: ios objective-c

我需要在目标c中将图像转换为图像' s uri(avatar uri)中的64位字符串。 这是我的输入uri

文件:///用户/我/库/开发商/ CoreSimulator /设备/ 81D640F9-A776-5B3D /数据/容器/数据/应用/ 4094435F-04-5A8A75 /文档/ F67871-6762-47A5-C8CDC。 JPG

这是我的代码,

RCT_EXPORT_METHOD(baseConvert:(NSURL *)url1)
{

  NSLog(@"My Input Uri:%@",url1);

  NSData* data = [NSData dataWithContentsOfURL:url1];

    //NSString *base64Encoded = [data base64EncodedStringWithOptions:0];


  //  NSString *base64Img = [data base64EncodedStringWithOptions:NSDataBase64EncodingEndLineWithLineFeed];

  NSString *base64Img = [data base64EncodedStringWithOptions:0];

  NSLog(@"My output String:%@",base64Img);

}

上面的代码创建了一个字符串。 但是当我检查在线图像解码器上的输出字符串时,它只给出了图像的上半部分。请帮帮我....

1 个答案:

答案 0 :(得分:0)

我使用此代码将URL转换为Base64String,它适用于我。试试吧。

 - (void)viewDidLoad
 {
    [super viewDidLoad];

    [self Base64StringFromImage];
 }



-(void)Base64StringFromImage
{
  NSString *base64String;
  NSURL *Sample_ImgUrl =  [NSURL URLWithString:@"https://gigaom.com/wp- content/uploads/sites/1/2010/06/macbookair_large.png?w=604"];

  NSData *imageData = [NSData dataWithContentsOfURL:Sample_ImgUrl];


 base64String=[imageData base64EncodedStringWithOptions:0];
 NSLog(@"Image  %@", base64String);

}




After Decode this base64String to Image  :- 

enter image description here