2011-10-07 95 views
0

我想將圖像上傳到服務器的數據庫中。將NSData轉換爲NSString而不進行編碼

對於我做

  1. 轉換的圖像使用UIImageJPEGReprenstation到NSData的。
  2. 使用base64lib將nsdata轉換爲nstring。

這裏的問題是,我有nsstring是NSASCII編碼。

因此,默認打開SSL轉換器無法讀取文件並將其轉換爲服務器端的正確圖像。

所以,我需要的是

不得使用nsascii或nsutf8或東西被編碼,我已經從NSData的創建NSString的,作爲圖像數據是二進制的。

或者

在服務器端,我必須把數據傳回二進制從我已在客戶端編碼nsascii或任何方式進行解碼。但是這裏的問題是我沒有任何內置的api解碼。

+1

這個問題沒有意義。你說你base64'd二進制數據,所以你可以把它放入一個字符串。 base64的輸出是ASCII的一個子集,所以自然該字符串最終會被編碼爲ASCII。究竟是什麼問題?你只需要在服務器上取消base64。 – Icydog

+0

問題是當我解碼服務器上的文本數據時,它得到正確解碼,但我認爲二進制數據得到雙重編碼,並沒有得到正確解碼。 –

回答

0

爲什麼你需要將圖像數據轉換爲字符串數據?難道你不能只使用jpg數據(MIME圖像/ jpeg)進行HTTP POST嗎? This post告訴你如何去做。

+0

在服務器端,我需要以sql查詢字符串的形式發佈它。所以:(我希望我做直接發佈到DB這種方式,但不能這樣! –

+0

有什麼辦法可以將UIImage轉換爲簡單文件,然後讀取NSDATA文件中的內容,然後對其進行編碼? –