added to utf8:
bool UTF8ToWide(const char * utf8, size_t utf8_len, WTextStream & res, bool clear = true, int mode = 1); bool UTF8ToWide(const char * utf8, WTextStream & res, bool clear = true, int mode = 1); bool UTF8ToWide(const std::string & utf8, WTextStream & res, bool clear = true, int mode = 1); bool UTF8ToWide(std::istream & utf8, WTextStream & res, bool clear = true, int mode = 1); void WideToUTF8(PT::WTextStream & buffer, std::string & utf8, bool clear = true, int mode = 1); void WideToUTF8(PT::WTextStream & buffer, std::ostream & utf8, int mode = 1); these functions need some testing yet git-svn-id: svn://ttmath.org/publicrep/pikotools/trunk@1156 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
19
utf8/utf8.h
19
utf8/utf8.h
@@ -5,7 +5,7 @@
|
||||
*/
|
||||
|
||||
/*
|
||||
* Copyright (c) 2010-2014, Tomasz Sowa
|
||||
* Copyright (c) 2010-2018, Tomasz Sowa
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
@@ -40,11 +40,14 @@
|
||||
|
||||
#include <fstream>
|
||||
#include <string>
|
||||
#include "textstream/textstream.h"
|
||||
|
||||
|
||||
namespace PT
|
||||
{
|
||||
|
||||
|
||||
|
||||
/*!
|
||||
UTF-8, a transformation format of ISO 10646
|
||||
http://tools.ietf.org/html/rfc3629
|
||||
@@ -83,6 +86,16 @@ bool UTF8ToWide(const std::string & utf8, std::wstring & res, bool cle
|
||||
bool UTF8ToWide(std::istream & utf8, std::wstring & res, bool clear = true, int mode = 1);
|
||||
|
||||
|
||||
/*!
|
||||
converting UTF-8 string to a WTextStream stream
|
||||
(need to be tested)
|
||||
*/
|
||||
bool UTF8ToWide(const char * utf8, size_t utf8_len, WTextStream & res, bool clear = true, int mode = 1);
|
||||
bool UTF8ToWide(const char * utf8, WTextStream & res, bool clear = true, int mode = 1);
|
||||
bool UTF8ToWide(const std::string & utf8, WTextStream & res, bool clear = true, int mode = 1);
|
||||
bool UTF8ToWide(std::istream & utf8, WTextStream & res, bool clear = true, int mode = 1);
|
||||
|
||||
|
||||
/*!
|
||||
converting one int character to UTF-8
|
||||
*/
|
||||
@@ -97,18 +110,22 @@ size_t IntToUTF8(int z, std::ostream & utf8);
|
||||
bool WideToUTF8(const wchar_t * wide_string, size_t string_len, std::string & utf8, bool clear = true, int mode = 1);
|
||||
bool WideToUTF8(const wchar_t * wide_string, std::string & utf8, bool clear = true, int mode = 1);
|
||||
bool WideToUTF8(const std::wstring & wide_string, std::string & utf8, bool clear = true, int mode = 1);
|
||||
void WideToUTF8(PT::WTextStream & buffer, std::string & utf8, bool clear = true, int mode = 1);// not tested
|
||||
|
||||
bool WideToUTF8(const wchar_t * wide_string, size_t string_len, std::ostream & utf8, int mode = 1);
|
||||
bool WideToUTF8(const wchar_t * wide_string, std::ostream & utf8, int mode = 1);
|
||||
bool WideToUTF8(const std::wstring & wide_string, std::ostream & utf8, int mode = 1);
|
||||
void WideToUTF8(PT::WTextStream & buffer, std::ostream & utf8, int mode = 1);// not tested
|
||||
|
||||
bool WideToUTF8(const wchar_t * wide_string, size_t string_len, char * utf8, size_t utf8_len, size_t & utf8_written, int mode = 1);
|
||||
bool WideToUTF8(const wchar_t * wide_string, char * utf8, size_t utf8_len, size_t & utf8_written, int mode = 1);
|
||||
bool WideToUTF8(const std::wstring & wide_string, char * utf8, size_t utf8_len, size_t & utf8_written, int mode = 1);
|
||||
// implement void WideToUTF8(PT::WTextStream & buffer, char * utf8, size_t utf8_len, size_t & utf8_written, int mode = 1);
|
||||
|
||||
bool WideToUTF8(const wchar_t * wide_string, size_t string_len, char * utf8, size_t utf8_len, int mode = 1);
|
||||
bool WideToUTF8(const wchar_t * wide_string, char * utf8, size_t utf8_len, int mode = 1);
|
||||
bool WideToUTF8(const std::wstring & wide_string, char * utf8, size_t utf8_len, int mode = 1);
|
||||
// implement void WideToUTF8(PT::WTextStream & buffer, char * utf8, size_t utf8_len, int mode = 1);
|
||||
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user