2010-09-17 99 views
0

Part 1) 我有一個位圖/ jpeg圖像。 我需要將這個圖像轉換爲ASCII字符串(因爲我需要散列它) 這種轉換爲ASCII如何完成?使用HTTP發送ASCII字符串Post

第2部分) 然後,我需要使用HTTP Post將此ASCII字符串從客戶端發送到服務器。

根據我的理解,我只能使用HTTP Post將數據作爲字節數組發送。 如何發送ASCII字符串而不是byte []?

在C#中的代碼將非常感謝!

回答

1

您可以使用base 64編碼或mime編碼將任何二進制數據轉換爲ASCII。我期望在.net框架中有這樣的功能。但是,我認爲這不完全是你想要做的。這是爲什麼:

您可以計算二進制數據的哈希碼,您不需要ASCII數據來計算哈希碼。 .net函數用於計算與二進制數據一起工作的散列。此外,你可以做一個二進制數據的http post,你不必使用簡單的ASCII來發布帖子。

+0

感謝您的提示,我不太瞭解哈希。如果數據是ASCII字符串,那麼ASCII字符串的HTTP Post如何完成? – Robogal 2010-09-17 18:25:17

0

您需要編碼爲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; 
} 
+0

無論如何哈希你不需要一個ASCII字符串!看看http://www.vcskicks.com/compute-hash.php – nivox 2010-09-17 18:07:06

+0

謝謝!我找到了一個鏈接,解釋瞭如何將圖像從文件轉換爲字節[]。 http://bytes.com/topic/c-sharp/answers/267613-ways-convert-image-base64-back – Robogal 2010-09-17 18:23:42

相關問題