Heim > Backend-Entwicklung > C++ > Wie kann man URLs in C robust kodieren und dekodieren?

Wie kann man URLs in C robust kodieren und dekodieren?

DDD
Freigeben: 2024-12-04 08:48:12
Original
719 Leute haben es durchsucht

How to Robustly Encode and Decode URLs in C  ?

URLs in C kodieren und dekodieren

Frage:

URLs in C kodieren und dekodieren . Ist robuster Code verfügbar?

Antwort:

Kodierung:

Um ein Problem mit der URL-Kodierung zu beheben, eine benutzerdefinierte Die C-Funktion wurde basierend auf einem C-Beispiel entwickelt Code:

#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);

        // Preserve alphanumeric and valid symbols
        if (isalnum(c) || c == '-' || c == '_' || c == '.' || c == '~') {
            escaped << c;
            continue;
        }

        // Percent-encode other characters
        escaped << uppercase;
        escaped << '%' << setw(2) << int((unsigned char) c);
        escaped << nouppercase;
    }

    return escaped.str();
}
Nach dem Login kopieren

Dekodierung:

Die Implementierung einer Dekodierungsfunktion ist eine optionale Übung.

Das obige ist der detaillierte Inhalt vonWie kann man URLs in C robust kodieren und dekodieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage