2016-06-08 66 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開發人員。 –

相關問題