0
我想在ASP.NET中將圖像url編碼爲Base64,以便開放源代碼API可以處理我的請求。事情開源端的支持團隊向我發送了來自PHP系統的這段代碼。我有問題轉換成C#等效。URL編碼Base64編碼文件數據
PHP代碼:
$data = urlencode(base64_encode(fread(fopen("/tmp/signature.jpg", "r"), filesize("/tmp/signature.jpg"))));
事情到目前爲止,我曾嘗試:
string data = "http://url.com/image.jpg"
byte[] encbuff = HttpUtility.UrlEncodeToBytes(data);
string enc = Convert.ToBase64String(encbuff);
string urlenc = HttpUtility.UrlEncode(data);
任何幫助,將不勝感激,謝謝。
MapServerPath + [File.ReadAllBytes](http://msdn.microsoft.com/en-us/library/system.io。 file.readallbytes.aspx)可能更貼近'fopen' /'fread'。並且需要在某處使用長度。 – 2013-04-27 01:44:29
由於問題中提到的數據是「http://url.com/image.jpg」,我認爲這將從另一臺計算機運行,而不是圖像存儲位置;如果這是不正確的,那麼'ReadAllBytes'是讀取它的好方法。 C#代碼不需要你指定文件的長度就可以做任何你在做的事情;即使它在PHP中發揮作用,我們也不需要在這裏的任何地方使用它。 – 2013-04-27 01:47:18
+1。你是對的 - 我沒有算上括號...... - 不需要長度。 – 2013-04-27 03:41:46