cpp-demo-project/include/plog/Converters/UTF8Converter.h

29 lines
573 B
C
Raw Permalink Normal View History

2024-01-22 12:05:59 +01:00
#pragma once
#include <plog/Util.h>
namespace plog
{
class UTF8Converter
{
public:
static std::string header(const util::nstring& str)
{
const char kBOM[] = "\xEF\xBB\xBF";
return std::string(kBOM) + convert(str);
}
#if PLOG_CHAR_IS_UTF8
static const std::string& convert(const util::nstring& str)
{
return str;
}
#else
static std::string convert(const util::nstring& str)
{
return util::toNarrow(str, codePage::kUTF8);
}
#endif
};
}