| // Common/StringConvert.h |
| |
| #ifndef __COMMON_STRING_CONVERT_H |
| #define __COMMON_STRING_CONVERT_H |
| |
| #include "MyWindows.h" |
| #include "MyString.h" |
| #include "Types.h" |
| |
| UString MultiByteToUnicodeString(const AString &srcString, UINT codePage = CP_ACP); |
| AString UnicodeStringToMultiByte(const UString &srcString, UINT codePage, char defaultChar, bool &defaultCharWasUsed); |
| AString UnicodeStringToMultiByte(const UString &srcString, UINT codePage = CP_ACP); |
| |
| |
| inline const wchar_t* GetUnicodeString(const wchar_t* unicodeString) |
| { return unicodeString; } |
| inline const UString& GetUnicodeString(const UString &unicodeString) |
| { return unicodeString; } |
| inline UString GetUnicodeString(const AString &ansiString) |
| { return MultiByteToUnicodeString(ansiString); } |
| inline UString GetUnicodeString(const AString &multiByteString, UINT codePage) |
| { return MultiByteToUnicodeString(multiByteString, codePage); } |
| inline const wchar_t* GetUnicodeString(const wchar_t* unicodeString, UINT) |
| { return unicodeString; } |
| inline const UString& GetUnicodeString(const UString &unicodeString, UINT) |
| { return unicodeString; } |
| |
| inline const char* GetAnsiString(const char* ansiString) |
| { return ansiString; } |
| inline const AString& GetAnsiString(const AString &ansiString) |
| { return ansiString; } |
| inline AString GetAnsiString(const UString &unicodeString) |
| { return UnicodeStringToMultiByte(unicodeString); } |
| |
| inline const char* GetOemString(const char* oemString) |
| { return oemString; } |
| inline const AString& GetOemString(const AString &oemString) |
| { return oemString; } |
| inline AString GetOemString(const UString &unicodeString) |
| { return UnicodeStringToMultiByte(unicodeString, CP_OEMCP); } |
| |
| |
| #ifdef _UNICODE |
| inline const wchar_t* GetSystemString(const wchar_t* unicodeString) |
| { return unicodeString;} |
| inline const UString& GetSystemString(const UString &unicodeString) |
| { return unicodeString;} |
| inline const wchar_t* GetSystemString(const wchar_t* unicodeString, UINT /* codePage */) |
| { return unicodeString;} |
| inline const UString& GetSystemString(const UString &unicodeString, UINT /* codePage */) |
| { return unicodeString;} |
| inline UString GetSystemString(const AString &multiByteString, UINT codePage) |
| { return MultiByteToUnicodeString(multiByteString, codePage);} |
| inline UString GetSystemString(const AString &multiByteString) |
| { return MultiByteToUnicodeString(multiByteString);} |
| #else |
| inline const char* GetSystemString(const char *ansiString) |
| { return ansiString; } |
| inline const AString& GetSystemString(const AString &multiByteString, UINT) |
| { return multiByteString; } |
| inline const char * GetSystemString(const char *multiByteString, UINT) |
| { return multiByteString; } |
| inline AString GetSystemString(const UString &unicodeString) |
| { return UnicodeStringToMultiByte(unicodeString); } |
| inline AString GetSystemString(const UString &unicodeString, UINT codePage) |
| { return UnicodeStringToMultiByte(unicodeString, codePage); } |
| #endif |
| |
| #ifndef UNDER_CE |
| AString SystemStringToOemString(const CSysString &srcString); |
| #endif |
| |
| #endif |