34#ifndef BLOCXX_ICONV_HPP_INCLUDE_GUARD_HPP_
35#define BLOCXX_ICONV_HPP_INCLUDE_GUARD_HPP_
36#include "blocxx/BLOCXX_config.h"
38#if defined(BLOCXX_HAVE_ICONV_SUPPORT)
51class BLOCXX_COMMON_API IConv_t
71 IConv_t(
const String &fromEncoding,
const String &toEncoding);
88 bool open(
const String &fromEncoding,
const String &toEncoding);
104 size_t convert(
char **istr,
size_t *ibytesleft,
105 char **ostr,
size_t *obytesleft);
138 BLOCXX_COMMON_API String
139 fromByteString(
const String &enc,
const char *str,
size_t len);
152 BLOCXX_COMMON_API String
153 fromByteString(
const String &enc,
const std::string &str);
155#ifdef BLOCXX_HAVE_STD_WSTRING
167 BLOCXX_COMMON_API String
168 fromWideString(
const String &enc,
const std::wstring &str);
182 BLOCXX_COMMON_API std::string
183 toByteString(
const String &enc,
const String &utf8);
185#ifdef BLOCXX_HAVE_STD_WSTRING
197 BLOCXX_COMMON_API std::wstring
198 toWideString(
const String &enc,
const String &utf8);
BLOCXX_COMMON_API int close(const FileHandle &hdl)
Close file handle.
Array< String > StringArray