Main Page   Modules   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   Related Pages  

KCodecs Class Reference

A collection of commonly used encoding and decoding algorithms. More...

#include <kmdcodec.h>

List of all members.

Static Public Methods

QCString quotedPrintableEncode (const QByteArray &in, bool useCRLF=true)
QCString quotedPrintableEncode (const QCString &str, bool useCRLF=true)
void quotedPrintableEncode (const QByteArray &in, QByteArray &out, bool useCRLF)
QCString quotedPrintableDecode (const QByteArray &in)
QCString quotedPrintableDecode (const QCString &str)
void quotedPrintableDecode (const QByteArray &in, QByteArray &out)
QCString uuencode (const QByteArray &in)
QCString uuencode (const QCString &str)
void uuencode (const QByteArray &in, QByteArray &out)
QCString uudecode (const QByteArray &in)
QCString uudecode (const QCString &str)
void uudecode (const QByteArray &in, QByteArray &out)
QCString base64Encode (const QByteArray &in, bool insertLFs=false)
QCString base64Encode (const QCString &str, bool insertLFs=false)
void base64Encode (const QByteArray &in, QByteArray &out, bool insertLFs=false)
QCString base64Decode (const QByteArray &in)
QCString base64Decode (const QCString &str)
void base64Decode (const QByteArray &in, QByteArray &out)


Detailed Description

A collection of commonly used encoding and decoding algorithms.

A wrapper class for the most commonly used encoding and decoding algorithms. Currently there is support for encoding and decoding input using base64, uu and the quoted-printable specifications.

@sect Usage:

 QCString input = "Aladdin:open sesame";
 QCString result = KCodecs::base64Encode(input);
 cout << "Result: " << result.data() << endl;

 Output should be
 Result: QWxhZGRpbjpvcGVuIHNlc2FtZQ==
 

The above example makes use of the convenience functions (ones that accept/return null-terminated strings) to encode/decode a string. If what you need is to encode or decode binary data, then it is highly recommended that you use the functions that take an input and output QByteArray as arguments. These functions are specifically tailored for encoding and decoding binary data.

Author:
Dawit Alemayehu <adawit@kde.org> , Rik Hemsley <rik@kde.org>

Definition at line 71 of file kmdcodec.h.


Member Function Documentation

void KCodecs::base64Decode const QByteArray &    in,
QByteArray &    out
[static]
 

Decodes the given data that was encoded with the base64 algorithm.

Use this function if you want the result of the decoding to be placed in another array which cuts down the number of copy operation that have to be performed in the process. This is also the preferred method for decoding an encoded binary data.

NOTE: the output array is first reset and then resized appropriately before use, hence, all data stored in the output array will be lost.

Parameters:
in  the encoded data to be decoded.
out  the container for the decoded data.

QCString KCodecs::base64Decode const QCString &    str [static]
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Same as the above functions except it accepts a null terminated string instead an array.

Parameters:
str  the base64-encoded string.
Returns:
the decoded string.

QCString KCodecs::base64Decode const QByteArray &    in [static]
 

Decodes the given data that was encoded using the base64 algorithm.

Parameters:
in  the base64-encoded data to be decoded.
Returns:
the decoded data.

void KCodecs::base64Encode const QByteArray &    in,
QByteArray &    out,
bool    insertLFs = false
[static]
 

Encodes the given data using the base64 algorithm.

Use this function if you want the result of the encoding to be placed in another array which cuts down the number of copy operation that have to be performed in the process. This is also the preferred method for encoding binary data.

The boolean argument determines if the encoded data is going to be restricted to 76 characters or less per line as specified by RFC 2045. If insertLFs is true, then there will be 76 characters or less per line.

NOTE: the output array is first reset and then resized appropriately before use, hence, all data stored in the output array will be lost.

Parameters:
in  the data to be encoded using base64.
out  the container for the encoded data.
insertLFs  limit the number of characters per line.

QCString KCodecs::base64Encode const QCString &    str,
bool    insertLFs = false
[static]
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Same as the above functions except it accepts a null terminated string instead an array.

Parameters:
str  the string to be encoded.
insertLFs  limit the number of characters per line.
Returns:
the decoded string.

QCString KCodecs::base64Encode const QByteArray &    in,
bool    insertLFs = false
[static]
 

Encodes the given data using the base64 algorithm.

The boolean argument determines if the encoded data is going to be restricted to 76 characters or less per line as specified by RFC 2045. If insertLFs is true, then there will be 76 characters or less per line.

Parameters:
in  the data to be encoded.
insertLFs  limit the number of characters per line.
Returns:
a base64 encoded string.

void KCodecs::quotedPrintableDecode const QByteArray &    in,
QByteArray &    out
[static]
 

Decodes a quoted-printable encoded data.

Accepts data with CRLF or standard unix line breaks. Use this function if you want the result of the decoding to be placed in another array which cuts down the number of copy operation that have to be performed in the process. This is also the preferred method for decoding an encoded binary data.

NOTE: the output array is first reset and then resized appropriately before use, hence, all data stored in the output array will be lost.

Parameters:
in  data to be encoded.
out  decoded data.
Returns:
quoted-printable encoded data.

QCString KCodecs::quotedPrintableDecode const QCString &    str [static]
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Same as above except it accepts a null terminated string instead an array.

Parameters:
str  the data to be decoded.
Returns:
decoded data.

QCString KCodecs::quotedPrintableDecode const QByteArray &    in [static]
 

Decodes a quoted-printable encoded string.

Accepts data with CRLF or standard unix line breaks.

Parameters:
in  the data to be decoded.
Returns:
decoded data.

void KCodecs::quotedPrintableEncode const QByteArray &    in,
QByteArray &    out,
bool    useCRLF
[static]
 

Encodes the given data using the quoted-printable algorithm.

Use this function if you want the result of the encoding to be placed in another array which cuts down the number of copy operation that have to be performed in the process. This is also the preferred method for encoding binary data.

NOTE: the output array is first reset and then resized appropriately before use, hence, all data stored in the output array will be lost.

Parameters:
in  data to be encoded.
out  decoded data.
useCRLF  if true the input data is expected to have CRLF line breaks and the output will have CRLF line breaks, too.
Returns:
quoted-printable encoded data.

QCString KCodecs::quotedPrintableEncode const QCString &    str,
bool    useCRLF = true
[static]
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Same as above except it accepts a null terminated string instead an array.

Parameters:
str  data to be encoded.
useCRLF  if true the input data is expected to have CRLF line breaks and the output will have CRLF line breaks, too.
Returns:
quoted-printable encoded data.

QCString KCodecs::quotedPrintableEncode const QByteArray &    in,
bool    useCRLF = true
[static]
 

Encodes the given data using the quoted-printable algorithm.

Parameters:
in  data to be encoded.
useCRLF  if true the input data is expected to have CRLF line breaks and the output will have CRLF line breaks, too.
Returns:
quoted-printable encoded data.

void KCodecs::uudecode const QByteArray &    in,
QByteArray &    out
[static]
 

Decodes the given data using the uudecode algorithm.

Use this function if you want the result of the decoding to be placed in another array which cuts down the number of copy operation that have to be performed in the process. This is the preferred method for decoding binary data.

Any 'begin' and 'end' lines like those generated by the utilities in unix and unix-like OS will be automatically ignored.

NOTE: the output array is first reset and then resized appropriately before use, hence, all data stored in the output array will be lost.

Parameters:
in  the uuencoded-data to be decoded.
out  the container for the uudecoded data.

QCString KCodecs::uudecode const QCString &    str [static]
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Same as the above functions except it accepts a null terminated string instead an array.

Parameters:
str  the string to be decoded.
Returns:
a uudecoded string.

QCString KCodecs::uudecode const QByteArray &    in [static]
 

Decodes the given data using the uuencode algorithm.

Any 'begin' and 'end' lines like those generated by the utilities in unix and unix-like OS will be automatically ignored.

Parameters:
in  the data uuencoded data to be decoded.
Returns:
a decoded string.

void KCodecs::uuencode const QByteArray &    in,
QByteArray &    out
[static]
 

Encodes the given data using the uuencode algorithm.

Use this function if you want the result of the encoding to be placed in another array and cut down the number of copy operation that have to be performed in the process. This is the preffered method for encoding binary data.

NOTE: the output array is first reset and then resized appropriately before use, hence, all data stored in the output array will be lost.

Parameters:
in  the data to be uuencoded.
out  the container for the uudecoded data.

QCString KCodecs::uuencode const QCString &    str [static]
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Same as the above functions except it accepts a null terminated string instead an array.

Parameters:
str  the string to be uuencoded.
Returns:
the encoded string.

QCString KCodecs::uuencode const QByteArray &    in [static]
 

Encodes the given data using the uuencode algorithm.

The output is split into lines starting with the number of encoded octets in the line and ending with a newline. No line is longer than 45 octets (60 characters), excluding the line terminator.

Parameters:
in  the data to be uuencoded
Returns:
a uuencoded data.


The documentation for this class was generated from the following file:
Generated on Wed Aug 13 23:30:06 2003 for kdelibs by doxygen1.2.18