/*!
	UrlTools.h

	URL関係の処理
*/
#pragma once

/*!
	URL関係の処理
*/
class CUrlTools
{
public:
	//////////////////////////////////////////////////////////////////////
	//	エンコード、デコード
	//////////////////////////////////////////////////////////////////////
	//!	URLデコードを行う
	static void UrlDecode(CUTF8String str, CBinaryData &decoded);

	//!	URLエンコードを行う
	static CUTF8String UrlEncode(CUTF8String str);

	//!	UrlをUTF8へコンバートを試みる
	static int UrlConvertToUTF8(CBinaryData decodedUrl, CUTF8String &utf8);

	//////////////////////////////////////////////////////////////////////
	//	URL処理
	//////////////////////////////////////////////////////////////////////
	//!	オブジェクト切り出し
	static CUTF8String GetUrlObject(CUTF8String url);

	//!	クエリ切り出し
	static CUTF8String GetQuery(CUTF8String url);

	//!	URLを正規化
	static CUTF8String NormalizeUrl(CUTF8String url);
};
