#pragma once #include #include #include std::wstring toLower(const std::wstring& a); std::wstring trimString(const std::wstring& a); std::wstring replaceAll(const std::wstring& in, const std::wstring& replace, const std::wstring& with); bool equalsIgnoreCase(const std::wstring& a, const std::wstring& b); template std::wstring toWString(T t) { std::wostringstream oss; oss << std::dec << t; return oss.str(); } template T fromWString(const std::wstring& s) { std::wistringstream stream(s); T t; stream >> t; return t; } template T fromHexWString(const std::wstring& s) { std::wistringstream stream(s); T t; stream >> std::hex >> t; return t; } std::wstring convStringToWstring(const std::string& converting); std::wstring u16string_to_wstring(const std::u16string& converting); std::u16string wstring_to_u16string(const std::wstring& converting); std::u8string wstring_to_u8string(const std::wstring& converting); std::string wstringtofilename(const std::wstring& name); std::wstring filenametowstring(const char* name); std::vector& stringSplit(const std::wstring& s, wchar_t delim, std::vector& elems); std::vector stringSplit(const std::wstring& s, wchar_t delim); void stripWhitespaceForHtml(std::wstring& string, bool bRemoveNewline = true); std::wstring escapeXML(const std::wstring& in); std::wstring parseXMLSpecials(const std::wstring& in);