亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? base64.cpp

?? Base64編碼算法, 可以分別對(duì)字符串和文件進(jìn)行編碼/解碼,帶進(jìn)度條, 內(nèi)含VC++6.0源碼
?? CPP
字號(hào):

/*
	Copyright 2006 - 2008
	ZhangLuduo <zhangluduo@msn.com>
	All Rights Reserved.
							
	Base64 編碼及解碼

	作者	- 張魯奪(zhangluduo)
	MSN		- zhangluduo@msn.com
	QQ群	- 34064264

	為所有愛我的人和我愛的人努力!
*/

#include "stdAfx.h"
#include "Base64.h"

#define for if ( 0 ) ; else for

Base64::Base64()
{
	//編碼表
	m_EncodeTable = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";

	// 建立解碼表.
	for( int i = 0; i < 256; i++ ) 
		m_DecodeTable[i] = -1;								// 非法數(shù)字.
	for( int i = 0; i < 64; i++ )
	{
		m_DecodeTable[ m_EncodeTable[ i ] ]			= i;
		m_DecodeTable[ m_EncodeTable[ i ] | 0x80 ]	= i;	// 忽略8th bit.
		m_DecodeTable[ '=' ]						= -1; 
		m_DecodeTable[ '=' | 0x80 ]					= -1; 
	}
}

Base64::~Base64()
{

}

void Base64::EncodeInput1(/* in */const unsigned char pData[1], /* out */char EncodeBuf[4])
{
    EncodeBuf[0] = m_EncodeTable[(pData[0] & 0xFC) >> 2];
    EncodeBuf[1] = m_EncodeTable[((pData[0] & 0x03) << 4)];
    EncodeBuf[2] = '=';
	EncodeBuf[3] = '=';
}

void Base64::EncodeInput2(/* in */const unsigned char pData[2], /* out */char EncodeBuf[4])
{
	EncodeBuf[0] = m_EncodeTable[(pData[0] & 0xFC) >> 2];
	EncodeBuf[1] = m_EncodeTable[((pData[0] & 0x03) << 4) | ((pData[1] & 0xF0) >> 4)];
	EncodeBuf[2] = m_EncodeTable[((pData[1] & 0x0F) << 2)];
	EncodeBuf[3] = '=';
}

void Base64::EncodeInput3(/* in */const unsigned char pData[3], /* out */char EncodeBuf[4])
{
	EncodeBuf[0] = m_EncodeTable[pData[0] >> 2];
	EncodeBuf[1] = m_EncodeTable[((pData[0] << 4) | (pData[1] >> 4)) & 0x3F];
	EncodeBuf[2] = m_EncodeTable[((pData[1] << 2) | (pData[2] >> 6)) & 0x3F];
	EncodeBuf[3] = m_EncodeTable[pData[2] & 0x3F];
}

string Base64::Encode(unsigned char* pData, int DataLen)
{
	string strEncode		= "";
	char EncodeBuf[5]		= { 0 };
	unsigned char ch[3]		= { 0 };
	int LineLen				= 0;

	for(int i = 0 ; i < (int)(DataLen / 3); i++)
	{
        ch[0] = *pData ++;
        ch[1] = *pData ++;
        ch[2] = *pData ++;
		EncodeInput3(ch, EncodeBuf);
		strEncode += EncodeBuf;

		if(LineLen += 4, LineLen == 76) 
		{
			strEncode += "\r\n";
			LineLen = 0;
		}
	}

	//對(duì)剩余數(shù)據(jù)進(jìn)行編碼
	int Mod = DataLen % 3;
	if(Mod == 1)
	{
		memset(EncodeBuf, 0, 5);
        ch[0] = *pData++;
		EncodeInput1(ch, EncodeBuf);
		strEncode += EncodeBuf;
	}
	else if(Mod == 2)
	{
		memset(EncodeBuf, 0, 5);
		ch[0] = *pData++;
		ch[1] = *pData++;
		EncodeInput2(ch, EncodeBuf);
		strEncode += EncodeBuf;
	}
	return strEncode;
}

//	char Base64::GetDecodeChar(char ch)
//	{
//		if ((ch >= 'A') && (ch <= 'Z')) 
//			return ch - 'A'; 
//		else if ((ch >= 'a') && (ch <= 'z')) 
//			return ch - 'a' + 26; 
//		else if ((ch >= '0') && (ch <= '9')) 
//			return ch - '0' + 52; 
//		switch (ch) 
//		{ 
//		case '+': 
//			return 62; 
//		case '/': 
//			return 63; 
//		case '=': // base64 padding
//			return 0; 
//		default: 
//			return 0; 
//		}
//	}

string Base64::Decode(unsigned char* pData, int DataLen, int* nByte)
{
	if(nByte != 0)
		*nByte = 0;

	string strDecode	= "";
    int nValue			= 0;
    int i				= 0;

	while (i < DataLen)
	{
		if (*pData != '\r' && *pData != '\n')
		{
			nValue		 = m_DecodeTable[*pData ++] << 18;
			nValue		+= m_DecodeTable[*pData ++] << 12;
			// nValue		 = GetDecodeChar(*pData ++) << 18;
			// nValue		+= GetDecodeChar(*pData ++) << 12;
			strDecode	+=(nValue & 0x00FF0000) >> 16;
			if(nByte != 0)
				++ (*nByte);
			
			if (*pData != '=')
			{
				nValue		+= m_DecodeTable[*pData++] << 6;
				//nValue		+= GetDecodeChar(*pData++) << 6;
				strDecode	+= (nValue & 0x0000FF00) >> 8;
				if(nByte != 0)
					++ (*nByte);
				
				if (*pData != '=')
				{
					nValue		+= m_DecodeTable[*pData++];
					// nValue		+= GetDecodeChar(*pData++);
					strDecode	+= nValue & 0x000000FF;
					if(nByte != 0)
						++ (*nByte);
				}
			}
			i += 4;
		}
		else // 回車換行,跳過
		{
			pData ++;
			i ++;
		}
	}
	return strDecode;
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
蜜桃精品视频在线| 欧美日韩国产中文| 精品国产乱码久久久久久牛牛| 亚洲一区二区三区小说| 欧美精品粉嫩高潮一区二区| 日本欧美久久久久免费播放网| 欧美一级二级在线观看| 麻豆高清免费国产一区| 成人免费在线观看入口| 在线观看av不卡| 免费欧美在线视频| 国产日产欧产精品推荐色| 国产福利视频一区二区三区| 国产亚洲欧美日韩在线一区| 91蝌蚪porny成人天涯| 视频一区欧美日韩| 久久久亚洲高清| 99久久精品免费看国产免费软件| 亚洲综合网站在线观看| 亚洲国产精品高清| 欧美日韩精品一区二区| 在线一区二区视频| 麻豆精品一区二区| 日日夜夜一区二区| 亚洲综合色婷婷| 亚洲女人小视频在线观看| 91精品国产麻豆国产自产在线 | 国产精品另类一区| 成人伦理片在线| 三级欧美在线一区| 一区二区三区产品免费精品久久75| 日韩免费看的电影| 91丨porny丨国产入口| 国产成人免费视频精品含羞草妖精| 捆绑变态av一区二区三区| 亚洲视频一区在线| 欧美α欧美αv大片| 日本韩国一区二区三区| 99riav久久精品riav| 成人精品视频网站| 成人爽a毛片一区二区免费| 国产黄人亚洲片| 国产不卡视频在线播放| 日本va欧美va欧美va精品| 午夜精品久久久久久久99水蜜桃 | 亚洲成a天堂v人片| www欧美成人18+| 日本高清免费不卡视频| 91老司机福利 在线| 欧美影院一区二区| thepron国产精品| 激情都市一区二区| 日韩电影在线免费观看| 琪琪久久久久日韩精品| 麻豆一区二区三区| 国产真实乱子伦精品视频| 国产精品一级黄| 精品一区二区三区日韩| 亚洲午夜激情av| 日韩一区在线看| 亚洲精品久久久久久国产精华液| 国产色爱av资源综合区| 中文字幕+乱码+中文字幕一区| 国产精品久久久久久久蜜臀| 一区二区三区国产精华| 日韩激情一二三区| 国产一区二区在线看| 日韩不卡一区二区三区 | 97成人超碰视| 在线视频国内自拍亚洲视频| 欧美高清性hdvideosex| 久久综合色播五月| 亚洲欧洲成人精品av97| 性做久久久久久| 国产呦精品一区二区三区网站| 成人av影院在线| 国产伦精品一区二区三区免费迷| 成人深夜在线观看| 欧美裸体一区二区三区| 久久久不卡影院| 亚洲综合一区二区三区| 精品一区二区三区日韩| 色综合天天综合| 在线精品国精品国产尤物884a | 国产精品久久久久久久久免费樱桃 | 一区二区三区视频在线看| 日本不卡的三区四区五区| 丁香婷婷综合色啪| 欧美欧美欧美欧美| 国产精品理伦片| 理论电影国产精品| av电影天堂一区二区在线| 91精品国产综合久久精品| 欧美日韩免费高清一区色橹橹| 欧美日韩欧美一区二区| 国产色产综合产在线视频| 偷拍与自拍一区| av中文一区二区三区| 欧美一级久久久| 成人涩涩免费视频| 91.xcao| 亚洲色图19p| 国产成人在线观看免费网站| 制服丝袜成人动漫| 亚洲女人****多毛耸耸8| 国产精品亚洲人在线观看| 911精品国产一区二区在线| 亚洲三级电影网站| 国产老肥熟一区二区三区| 欧美日本乱大交xxxxx| 中文字幕一区二区三区在线播放 | 欧洲生活片亚洲生活在线观看| 久久精品欧美日韩| 美女一区二区三区| 精品视频全国免费看| 亚洲人快播电影网| 懂色一区二区三区免费观看| 精品少妇一区二区三区在线视频| 午夜精品一区二区三区电影天堂| 色婷婷精品大视频在线蜜桃视频| 欧美日韩一区在线| 有坂深雪av一区二区精品| kk眼镜猥琐国模调教系列一区二区| 久久综合九色欧美综合狠狠| 蜜臀精品久久久久久蜜臀| 欧美精品免费视频| 视频一区二区中文字幕| 欧美欧美欧美欧美| 丝袜诱惑制服诱惑色一区在线观看 | 亚洲精品中文字幕乱码三区| 成人丝袜18视频在线观看| 国产日韩欧美高清在线| 国产成人aaa| 欧美激情一区二区三区四区| 国产福利电影一区二区三区| 欧美精品一区二区三区视频| 激情综合色综合久久| 精品久久一二三区| 黄一区二区三区| 国产欧美日韩另类视频免费观看| 国产成人精品免费看| 中文字幕av一区二区三区高| av电影在线不卡| 一区二区高清视频在线观看| 欧美性受xxxx| 日韩高清欧美激情| 欧美成人猛片aaaaaaa| 国内成人自拍视频| 国产欧美日韩另类一区| 97精品电影院| 亚洲高清久久久| 日韩一区二区在线观看| 国产在线日韩欧美| 国产精品网站在线| 91免费精品国自产拍在线不卡| 一区二区三区久久| 91精品国产乱码久久蜜臀| 欧美日本高清视频在线观看| 水野朝阳av一区二区三区| 91精品国产色综合久久ai换脸| 久久99精品国产麻豆不卡| 久久久久久久久蜜桃| 97se狠狠狠综合亚洲狠狠| 亚洲尤物在线视频观看| 日韩一区二区三区四区| 国产精品原创巨作av| 亚洲天堂福利av| 欧美高清激情brazzers| 久久国产剧场电影| 国产精品传媒在线| 欧美人成免费网站| 国产精品亚洲午夜一区二区三区 | 色激情天天射综合网| 日韩和欧美的一区| 国产日韩欧美不卡| 欧美在线免费观看视频| 美女在线视频一区| 亚洲欧美一区二区三区极速播放| 69av一区二区三区| 粉嫩绯色av一区二区在线观看| 亚洲自拍偷拍综合| 2014亚洲片线观看视频免费| 91同城在线观看| 激情欧美一区二区三区在线观看| 亚洲品质自拍视频| 久久亚洲欧美国产精品乐播| 色综合久久中文字幕综合网| 精品一区二区三区在线播放| 一区二区三区成人在线视频| 国产无人区一区二区三区| 欧美日韩不卡一区| 成人av在线观| 久99久精品视频免费观看| 一区二区三区在线视频免费观看| 精品免费一区二区三区| 在线看国产日韩| 波多野结衣的一区二区三区| 久久爱www久久做| 亚洲成人av电影在线| 国产精品第13页|