C에서 URL 인코딩 및 디코딩
많은 애플리케이션이 URL을 통해 네트워크를 통해 전송되어야 하는 데이터를 처리합니다. 이러한 시나리오에서는 특수 문자와 공백이 올바르게 표시되도록 URL을 인코딩하는 것이 중요합니다.
URL 인코딩
다음은 URL을 인코딩하는 C 함수입니다. URL:
#include <cctype> #include <iomanip> #include <sstream> #include <string> using namespace std; string url_encode(const string &value) { ostringstream escaped; escaped.fill('0'); escaped << hex; for (string::const_iterator i = value.begin(), n = value.end(); i != n; ++i) { string::value_type c = (*i); // Keep alphanumeric and other accepted characters intact if (isalnum(c) || c == '-' || c == '_' || c == '.' || c == '~') { escaped << c; continue; } // Any other characters are percent-encoded escaped << uppercase; escaped << '%' << setw(2) << int((unsigned char) c); escaped << nouppercase; } return escaped.str(); }
URL 디코딩 (연습)
원래 질문에 대한 답변에서 언급했듯이 URL 디코딩 구현은 연습으로 남겨 둡니다. 이 함수는 이스케이프된 URL을 가져와 원래 형식으로 다시 변환합니다.
사용 예
URL을 인코딩하려면 입력에 전달되는 url_encode 함수를 호출하면 됩니다. 문자열.
URL을 디코딩하려면 디코딩 기능을 구현하고 이스케이프된 문자열을 입력하세요.
위 내용은 C에서 URL을 인코딩하고 디코딩하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!