내 VC++ (VS2008) 프로젝트에서 멀티 바이트 문자 집합을 사용합니다.아랍어 텍스트 용 BSTR에서 CString 변환
내가 입력 날짜가이 형식 COleDateTime
_bstr_t bstr_tDate = bstrDate; //bstrDate is populated by a COM function
const CString szStartDateTime = bstr_tDate.operator const char *();
bool bParseOK = oleDateTime.ParseDateTime(szStartDateTime);
이 코드는 모든 국가 별 설정에서 잘 작동하지만, 아랍어 국가 별 설정에 실패에 날짜 문자열을 변환하는 다음 코드를했습니다 : 21/05/2012 11 : 50 : 31 م
변환 후, CString을 정크 문자를 포함하고 구문 분석 실패 : 2012년 1월 5일 11 : 50 : 28A
아랍어 설정에서 작동하는 BSTR to CString 변환이 있습니까?
typedef WCHAR OLECHAR;
typedef OLECHAR* BSTR;
'م'와 같은 특수 문자가 단일 WCHAR
로 표시되는 것을 의미
가장 좋은 해결책은 MBCS 사용을 중지하는 것입니다. –