C++ UrlEncode UrlDecode
来源:互联网 发布:docker搭建java web 编辑:程序博客网 时间:2024/06/06 01:17
占位, 看到一个代码c++写的urlEncode和UrlDecode和写法,刚好用到, 好记性不如烂笔头啊
namespace Utility { std::string charToHex(unsigned char c) { short i = c; std::stringstream s; s << "%" << std::setw(2) << std::setfill('0') << std::hex << i; return s.str(); } unsigned char hexToChar(const std::string &str) { short c = 0; if(!str.empty()) { std::istringstream in(str); in >> std::hex >> c; if(in.fail()) { throw std::runtime_error("stream decode failure"); } } return static_cast<unsigned char>(c); } std::string urlEncode(const std::string &toEncode) { std::ostringstream out; for(std::string::size_type i = 0, len = toEncode.length(); i < len; ++i) { short t = toEncode.at(i); if( t == 45 || // hyphen (t >= 48 && t <= 57) || // 0-9 (t >= 65 && t <= 90) || // A-Z t == 95 || // underscore (t >= 97 && t <= 122) || // a-z t == 126 // tilde ) { out << toEncode.at(i); } else { out << charToHex(toEncode.at(i)); } } return out.str(); } std::string urlDecode(const std::string &toDecode) { std::ostringstream out; for(std::string::size_type i = 0, len = toDecode.length(); i < len; ++i) { if(toDecode.at(i) == '%') { std::string str(toDecode.substr(i+1, 2)); out << hexToChar(str); i += 2; } else { out << toDecode.at(i); } } return out.str(); }}
0 0
- UrlEncode UrlDecode
- urlencode urldecode
- urlencode,urldecode
- URLDecode 和 URLEncode 在 C 中的实现
- 一个urlencode/urldecode的C实现
- URLDecode 和 URLEncode 在 C 中的实现中的 URLEncode
- 利用C语言进行urldecode,解决浏览器中的urlencode
- URLEncode和URLDecode
- urlencode AND urldecode
- urlencode AND urldecode
- URLencode AND URLdecode
- URLencode AND URLdecode
- javaScript UrlEncode and UrlDecode
- VC URLEncode UrlDecode
- VC URLEncode & UrlDecode
- C++实现urlencode,urldecode
- UrlEncode编码/UrlDecode解码
- URLEncode与URLDecode
- Java基本概念-类和对象
- 总结
- 前辈多年嵌入式开发经验
- Xamarin+Prism小试牛刀:定制跨平台Outlook邮箱应用
- AVAudioPlayer
- C++ UrlEncode UrlDecode
- 红黑树总结
- layout_gravity和gravity属性的区别(Android)
- 前端之路
- 点击事件
- Innobackup mysql 多实例环境搭建主从同步
- Android文件系统分析
- Java 关于IO流的全面介绍
- java.util.Date、java.sql.Date、java.sql.Time、java.sql.Timestamp区别和联系