Maple Professionel
Maple Académique
Maple Edition Étudiant
Maple Personal Edition
Maple Player
Maple Player for iPad
MapleSim Professionel
MapleSim Académique
Maple T.A. - Suite d'examens de classement
Maple T.A. MAA Placement Test Suite
Möbius - Didacticiels de mathématiques en ligne
Machine Design / Industrial Automation
Aéronautique
Ingénierie des véhicules
Robotics
Energie
System Simulation and Analysis
Model development for HIL
Modélisation du procédé pour la conception de systèmes de contrôle
Robotics/Motion Control/Mechatronics
Other Application Areas
Enseignement des mathématiques
Enseignement de l’ingénierie
Enseignement secondaire et supérieur (CPGE, BTS)
Tests et évaluations
Etudiants
Modélisation financière
Recherche opérationnelle
Calcul haute performance
Physique
Webinaires en direct
Webinaires enregistrés
Agenda des évènements
Forum MaplePrimes
Blog Maplesoft
Membres Maplesoft
Maple Ambassador Program
MapleCloud
Livres blancs techniques
Bulletin électronique
Livres Maple
Math Matters
Portail des applications
Galerie de modèles MapleSim
Cas d'Etudes Utilisateur
Exploring Engineering Fundamentals
Concepts d’enseignement avec Maple
Centre d’accueil utilisateur Maplesoft
Centre de ressources pour enseignants
Centre d’assistance aux étudiants
StringTools[Encode] - encode a string using a specified encoding
StringTools[Decode] - decode an encoded string
Calling Sequence
Encode( s, 'encoding' = enc )
Decode( s, 'encoding' = enc )
Parameters
s
-
string; any Maple string
enc
(optional) name of the encoding to use (one of: "null", "base64", "rot13", 'rot'[n], 'alpharot'[n], 'percent' where n is an integer in the range )
Description
The procedure Encode takes a string s, and an optional encoding= argument, and returns a string obtained from s by applying the encoding method indicated by the encoding= option.
The procedure Decode takes an encoded string s, and an optional encoding= argument, and returns the string obtained by decoding according to the method indicated in the second argument. It is an approximate inverse of Encode.
The currently supported encodings are:
null
the null encoding (does nothing)
rot13
classical Caesar cypher on alphabetic characters
rot[n]
classical Caesar cypher on nonzero bytes
alpharot[n]
classical Caesar cypher on alphabetic (letter) characters
base64
base 64 encoding as described in RFC 2045.
percent
percent encoding for URLs
The default encoding is null, which returns the input unchanged.
The rot13 encoding is a simple Caesar cypher that is applied only to alphabetic characters in the input string. Other characters are not encoded.) It treats the alphabetic characters ("a".."z" and "A".."Z") as integers modulo 26 and shifts each one by 13.
The general encoding performs a Caesar cypher modulo 256 on the individual bytes in the input string by treating each as an integer in the range and shifting each by the offset n modulo 256. The parameter n of the encoding must be an integer in the range .
While the general encoding is applied indiscriminately to all nonzero bytes of a string, the encoding is generally more suitable for didactic purposes. The parameter n may be any integer in the range , and only alphabetic characters in the text are affected by the encoding. Other characters in the text are passed through to the output unchanged. Upper and lower case letters are encoded independently, each letter being shifted cyclically (modulo 26) within its own case.
The base64 encoding is described in detail in RFC 2045. It is standard encoding for arbitrary data in a subset of the US-ASCII character set so that it can be transmitted via channels that are unable to handle 8-bit character data. It is frequently used in electronic mail (SMTP) and web (HTTP) transactions.
The percent encoding is used to encode URLs. Certain characters in a URL are replaced with a % sign, followed by a two-digit hexadecimal code for the US-ASCII code point of the character.
Examples
See Also
StringTools, StringTools[Shift]
References
Information Sciences Institute, "RFC 2045 Internet Message Bodies," ISI Home Page, http://www.isi.edu/in-notes/rfc2045.txt; accessed 28 November 2005.
Download Help Document