TagLib API Documentation
Public Member Functions | List of all members
TagLib::ID3v2::Latin1StringHandler Class Reference

An abstraction for the ISO-8859-1 string to data encoding in ID3v2 tags. More...

#include <id3v2tag.h>

Public Member Functions

 Latin1StringHandler ()
 
virtual ~Latin1StringHandler ()
 
 Latin1StringHandler (const Latin1StringHandler &)=delete
 
Latin1StringHandleroperator= (const Latin1StringHandler &)=delete
 
virtual String parse (const ByteVector &data) const
 

Detailed Description

An abstraction for the ISO-8859-1 string to data encoding in ID3v2 tags.

ID3v2 tag can store strings in ISO-8859-1 (Latin1), and TagLib only supports genuine ISO-8859-1 by default. However, in practice, non ISO-8859-1 encodings are often used instead of ISO-8859-1, such as Windows-1252 for western languages, Shift_JIS for Japanese and so on.

Here is an option to read such tags by subclassing this class, reimplementing parse() and setting your reimplementation as the default with ID3v2::Tag::setStringHandler().

Note
Writing non-ISO-8859-1 tags is not implemented intentionally. Use UTF-16 or UTF-8 instead.
See also
ID3v2::Tag::setStringHandler()

Constructor & Destructor Documentation

◆ Latin1StringHandler() [1/2]

TagLib::ID3v2::Latin1StringHandler::Latin1StringHandler ( )

◆ ~Latin1StringHandler()

virtual TagLib::ID3v2::Latin1StringHandler::~Latin1StringHandler ( )
virtual

◆ Latin1StringHandler() [2/2]

TagLib::ID3v2::Latin1StringHandler::Latin1StringHandler ( const Latin1StringHandler )
delete

Member Function Documentation

◆ operator=()

Latin1StringHandler & TagLib::ID3v2::Latin1StringHandler::operator= ( const Latin1StringHandler )
delete

◆ parse()

virtual String TagLib::ID3v2::Latin1StringHandler::parse ( const ByteVector data) const
virtual

Decode a string from data. The default implementation assumes that data is an ISO-8859-1 (Latin1) character array.


The documentation for this class was generated from the following file: