2016-06-08 105 views
-1

我正在写一个应用程序的android和IOS的web api,我有一个问题将base64转换为IOS的图像,对于android他们给出正确的base64格式的字符串。我可以将它转换为图像。但在IOS中,他们给了我一个像这样开始的字符串/9j/4AAQSkZJRgABAQAASABIAAD/4QBYRXhpZgAATU0AKgAAAAgAAgESAAMAAAABAAEAAIdpAAQAAAABAAAAJgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAGhKADAAQAAAABAAAJxAAAAAD/7QA4UGhvdG9zaG9wIDMuMAA4QklNBAQAAAAAAAA4QklNBCUAAAAAABDUHYzZjwCyBOmACZjs。在此字符串包含一些空的空间,我不得不删除它这个样子,如何将Swift(IOS)字符串转换为webapi中的base64字符串?

string images = model.RequestObject.UserImage.ToCharArray().Where(c=>!Char.IsWhiteSpace(c)).Select(c => c.ToString()).Aggregate((a, b) => a + b); 

虽然将字符串转换为图像,像扔一个字符串错误信息是不是Base64格式。这是如何我将它

File.WriteAllBytes(StoragePath, Convert.FromBase64String(model.RequestObject.UserImage)); 
       model.RequestObject.UserImage = FileName; 

我曾试图这样

var bytes = Convert.FromBase64String(resizeImage.Content); using (var imageFile = new FileStream(filePath, FileMode.Create)) { imageFile.Write(bytes ,0, bytes.Length); imageFile.Flush(); } 

但是我的API表示,它不是有效的字符串。 有人可以帮助我如何解决这个问题。谢谢!

回答

1

尝试编码像这样

let utf8str = yourString.dataUsingEncoding(NSUTF8StringEncoding) 
let base64Encoded = utf8str.base64EncodedStringWithOptions(NSDataBase64EncodingOptions.fromRaw(0)!) 

希望这会有所帮助。

+0

Nirav Doctorwala,我这样做。在我的API或IOS? –

+0

iOS端发送这个base64encoded到你的API –

+0

谢谢,Nirav,让我检查我的IOS开发人员。 –

相关问题