Part 1) 我有一個位圖/ jpeg圖像。 我需要將這個圖像轉換爲ASCII字符串(因爲我需要散列它) 這種轉換爲ASCII如何完成?使用HTTP發送ASCII字符串Post
第2部分) 然後,我需要使用HTTP Post將此ASCII字符串從客戶端發送到服務器。
根據我的理解,我只能使用HTTP Post將數據作爲字節數組發送。 如何發送ASCII字符串而不是byte []?
在C#中的代碼將非常感謝!
Part 1) 我有一個位圖/ jpeg圖像。 我需要將這個圖像轉換爲ASCII字符串(因爲我需要散列它) 這種轉換爲ASCII如何完成?使用HTTP發送ASCII字符串Post
第2部分) 然後,我需要使用HTTP Post將此ASCII字符串從客戶端發送到服務器。
根據我的理解,我只能使用HTTP Post將數據作爲字節數組發送。 如何發送ASCII字符串而不是byte []?
在C#中的代碼將非常感謝!
您可以使用base 64編碼或mime編碼將任何二進制數據轉換爲ASCII。我期望在.net框架中有這樣的功能。但是,我認爲這不完全是你想要做的。這是爲什麼:
您可以計算二進制數據的哈希碼,您不需要ASCII數據來計算哈希碼。 .net函數用於計算與二進制數據一起工作的散列。此外,你可以做一個二進制數據的http post,你不必使用簡單的ASCII來發布帖子。
將二進制數據(如圖像)轉換爲ASCII字符串的一種方法是使用base-64。 Base64編碼的一個例子是:http://arcanecode.com/2007/03/21/encoding-strings-to-base64-in-c/
您需要編碼爲Base64您的圖像,從而形成一個ASCII字符串: http://en.wikipedia.org/wiki/Base64
你可以做,在C#這樣的:
static public string EncodeTo64(string toEncode{
byte[] toEncodeAsBytes = System.Text.ASCIIEncoding.ASCII.GetBytes(toEncode);
string returnValue = System.Convert.ToBase64String(toEncodeAsBytes);
return returnValue;
}
感謝您的提示,我不太瞭解哈希。如果數據是ASCII字符串,那麼ASCII字符串的HTTP Post如何完成? – Robogal 2010-09-17 18:25:17