Decodieren eines base64-codierten Strings.
Decodieren eines base64-codierten Strings. Der zurückgegebene Zeiger muss mit release wieder gelöscht werden.
| Name | Typ | Default | Beschreibung |
| Return | char* | Neu erzeugter char*-String mit dem decodierten Eingabetext. Das Ergebnis muss mit release wieder gelöscht werden. | |
| txt | char* | - | beliebiger base64-codierter char*-String |
| binary | int | 0 | Sollen Binärdaten dekodiert werden? Wenn dieser Parameter 1 ist, kann das Ergebnis 0en enthalten und es wird in das keine Abschließende 0 geschrieben. In diesem Fall sollten Sie den Ausgabeparameter oLength verwenden. |
| oLength | int * | 0 | Ausgabelänge der dekodierten Daten. Insbesondere wichtig beim dekodieren von Binärdaten, deren Länge nicht per strlen bestimmt werden kann. |
| useSOAPDecoder | int | 0 | Sie werden den Parameter kaum benötigen, aber just in case: Hat der Parameter einen Wert ungleich 0 wird exakt der gleiche Decoder verwendet, den auch SOAP verwendet. In Illustrator® wird der Parameter ignoriert und immer das Standardverfahren zur Dekodierung verwendet. |
Kodierung des aktuellen Textes und Rückcodierung dieses Ergebnisses sollten den gleichen String beinhalten.
int main ()
{
String str = string::alloc ();
char * enc = 0;
char * dec = 0;
textmodel::gettext (str);
enc = encode_base64 (string::get (str));
dec = decode_base64 (enc);
showmessage ("%s\n\n%s\n\n%d", enc, dec, strcmp (string::get (str), dec));
release (enc);
release (dec);
return 0;
}
Der Text des aktuellen Textmodelles wird in eine base64-codiert in eine Datei geschrieben. Danach wird diese Datei wieder eingelesen. Original- und eingelesener Text sollten gleich sein. Achten Sie darauf, den Lesepuffer genügend groß zu machen oder in einer Schleife zu lesen und zu decodieren.
int main ()
{
String str = string::alloc ();
char * enc = 0;
char * dec = 0;
char buf [3001];
int fi = 0;
textmodel::gettext (str);
// Encode to file
enc = encode_base64 (string::get (str));
fi = file::open ("$DESKTOP/txt.txt", "w");
file::write (fi, enc);
file::close (fi);
// Decode from file
fi = file::open ("$DESKTOP/txt.txt", "r");
file::read (fi, buf, 3000);
file::close (fi);
dec = decode_base64 (buf);
showmessage ("%s\n\n%s\n\n%d", enc, dec, strcmp (string::get (str), dec));
release (enc);
release (dec);
return 0;
}
Alphabetic index HTML hierarchy of classes or Java