1 // Common/StringConvert.h
\r
3 #ifndef __COMMON_STRING_CONVERT_H
\r
4 #define __COMMON_STRING_CONVERT_H
\r
6 #include "MyWindows.h"
\r
7 #include "MyString.h"
\r
10 UString MultiByteToUnicodeString(const AString &srcString, UINT codePage = CP_ACP);
\r
11 AString UnicodeStringToMultiByte(const UString &srcString, UINT codePage, char defaultChar, bool &defaultCharWasUsed);
\r
12 AString UnicodeStringToMultiByte(const UString &srcString, UINT codePage = CP_ACP);
\r
15 inline const wchar_t* GetUnicodeString(const wchar_t* unicodeString)
\r
16 { return unicodeString; }
\r
17 inline const UString& GetUnicodeString(const UString &unicodeString)
\r
18 { return unicodeString; }
\r
19 inline UString GetUnicodeString(const AString &ansiString)
\r
20 { return MultiByteToUnicodeString(ansiString); }
\r
21 inline UString GetUnicodeString(const AString &multiByteString, UINT codePage)
\r
22 { return MultiByteToUnicodeString(multiByteString, codePage); }
\r
23 inline const wchar_t* GetUnicodeString(const wchar_t* unicodeString, UINT)
\r
24 { return unicodeString; }
\r
25 inline const UString& GetUnicodeString(const UString &unicodeString, UINT)
\r
26 { return unicodeString; }
\r
28 inline const char* GetAnsiString(const char* ansiString)
\r
29 { return ansiString; }
\r
30 inline const AString& GetAnsiString(const AString &ansiString)
\r
31 { return ansiString; }
\r
32 inline AString GetAnsiString(const UString &unicodeString)
\r
33 { return UnicodeStringToMultiByte(unicodeString); }
\r
35 inline const char* GetOemString(const char* oemString)
\r
36 { return oemString; }
\r
37 inline const AString& GetOemString(const AString &oemString)
\r
38 { return oemString; }
\r
39 inline AString GetOemString(const UString &unicodeString)
\r
40 { return UnicodeStringToMultiByte(unicodeString, CP_OEMCP); }
\r
44 inline const wchar_t* GetSystemString(const wchar_t* unicodeString)
\r
45 { return unicodeString;}
\r
46 inline const UString& GetSystemString(const UString &unicodeString)
\r
47 { return unicodeString;}
\r
48 inline const wchar_t* GetSystemString(const wchar_t* unicodeString, UINT /* codePage */)
\r
49 { return unicodeString;}
\r
50 inline const UString& GetSystemString(const UString &unicodeString, UINT /* codePage */)
\r
51 { return unicodeString;}
\r
52 inline UString GetSystemString(const AString &multiByteString, UINT codePage)
\r
53 { return MultiByteToUnicodeString(multiByteString, codePage);}
\r
54 inline UString GetSystemString(const AString &multiByteString)
\r
55 { return MultiByteToUnicodeString(multiByteString);}
\r
57 inline const char* GetSystemString(const char *ansiString)
\r
58 { return ansiString; }
\r
59 inline const AString& GetSystemString(const AString &multiByteString, UINT)
\r
60 { return multiByteString; }
\r
61 inline const char * GetSystemString(const char *multiByteString, UINT)
\r
62 { return multiByteString; }
\r
63 inline AString GetSystemString(const UString &unicodeString)
\r
64 { return UnicodeStringToMultiByte(unicodeString); }
\r
65 inline AString GetSystemString(const UString &unicodeString, UINT codePage)
\r
66 { return UnicodeStringToMultiByte(unicodeString, codePage); }
\r
70 AString SystemStringToOemString(const CSysString &srcString);
\r