Ⅰ base64編碼是什麼意思啊
Base64是網路上最常見的用於傳輸8Bit位元組代碼的編碼方式之一,大家可以查看RFC2045~RFC2049,上面有MIME的詳細規范。Base64編碼可用於在HTTP環境下傳遞較長的標識信息。例如,在Java Persistence系統Hibernate中,就採用了Base64來將一個較長的唯一標識符(一般為128-bit的UUID)編碼為一個字元串,用作HTTP表單和HTTP GET URL中的參數。在其他應用程序中,也常常需要把二進制數據編碼為適合放在URL(包括隱藏表單域)中的形式。此時,採用Base64編碼具有不可讀性,即所編碼的數據不會被人用肉眼所直接看到。
Ⅱ C 中怎麼將2進制字元串進行Base64編碼
在 ATLENC.H 里有一個庫函數:
BOOL Base64Encode(
_In_reads_(nSrcLen) const BYTE *pbSrcData,
_In_ int nSrcLen,
_When_(*pnDestLen > 0, _Out_writes_to_(*pnDestLen, *pnDestLen)) LPSTR szDest,
_Inout_ int *pnDestLen,
_In_ DWORD dwFlags = ATL_BASE64_FLAG_NONE)
用法:
input: buf(byte), buflen, out StringA, outLen, 轉換模式.
Base64Encode(buf,buflen,strA.GetBuffer(outlen),&outlen, ATL_BASE64_FLAG_NONE))
Ⅲ VC++問題,怎麼對一個音頻文件進行base64編碼最好給一個函數
BASE64可以用來將binary的位元組序列數據編碼成ASCII字元序列構成的文本。完整的BASE64定義可見 RFC1421和 RFC2045。編碼後的數據比原始數據略長,為原來的4/3。在電子郵件中,根據RFC822規定,每76個字元,還需要加上一個回車換行。
轉換的時候,將三個byte的數據,先後放入一個24bit的緩沖區中,先來的byte占高位。數據不足3byte的話,於緩沖區中剩下的Bit用0補足。然後,每次取出6個bit,按照其值選擇+/中的字元作為編碼後的輸出。不斷進行,直到全部輸入數據轉換完成。如果最後剩下兩個輸入數據,在編碼結果後加1個「=」;如果最後剩下一個輸入數據,編碼結果後加2個「=」;如果沒有剩下任何數據,就什麼都不要加,這樣才可以保證資料還原的正確性。
Ⅳ 高分求解:c語言的一個簡單問題
.NET 裡面有這樣的解碼的,自己找個書好好看下就知道了.結帖吧
Ⅳ C語言編程:編寫一個函數base64加密
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
constchar*chlist="+/";
intencode_string(char*str,unsignedintlength,char*stat){
chars[103];
inti,j;
unsignedtemp;
if(length<=0)return1;
if(length>100)return2;
str[length]='