본문 바로가기
반응형

CString14

[개발/MFC] 파일에서 불러들인 문자열 나누기 Tokenize [개발/MFC] 파일에서 불러들인 문자열 나누기 Tokenize vector나 AfxExtractSubString 함수를 사용하지 않고 하려고 찾다가 보니 MFC에서 지원하는 CString 내 tokenize() 함수가 있어서 이 함수를 사용하게 되었다. 아래 사이트의 내용을 보고 배워서 잘 사용하고 있다. 출처: http://www.cyworld.com/blog_calmtot/3254873 //load the ini file setting value. CArray tokens; CFile file; BOOL bFileOpend = file.Open(DBConnFile,CFile::modeRead); if(bFileOpend) { char buf[100] = {0,}; file.Read(&buf,size.. 2011. 12. 20.
[개발/MFC] Variant To CString , CString to Variant 소백촌닭 이제 문자열 변환 헤매이지 말고 여기에서 다 찾자. 이 문자열 변수 변환은 아주 유용하게 사용될 것이당. [개발/MFC] BSTR to CString 문자열 변환 http://sbrich.tistory.com/1047 [개발/MFC} CString to char http://sbrich.tistory.com/842 [VC++] 문자열변환 CString LPSTR WCHAR* LPCWSTR http://sbrich.tistory.com/383 Variant To CString , CString to Variant CString str="abc"; COleVariant strVar(str); VARIANT var=strVar.Detach(); CString VariantToString(VARIANT.. 2011. 8. 1.
[개발/MFC] 문자열 변환 BSTR to CString, CString to BSTR, BSTR to char* [개발/MFC] 문자열 변환 BSTR to CString, CString to BSTR, BSTR to char* VC++ , MFC에서 문자열 변환 정말 까다롭다. 더군다나 유니코드 모드는 조금더 까다로운것 같다. 아래 예제가 도움이 될 것이라 생각된다. // Convert BSTR to CString BSTR bsName; CString csName; USES_CONVERSION; csName = OLE2A(bsName); // Convert CString to BSTR BSTR bsName; CString csName; bsName = csName.SysAllocString(); // create an OLE string BSTR bstr = ::SysAllocString(L"Golf is fun!.. 2011. 5. 12.
[개발/VC++/MFC] CString ↔ char 변환 1. CString을 char으로 변환 CString csTest; csTest = "I Love You"; char* cTest = LPSTR(LPCTSTR(csTest)); 2. char을 CString으로 변환 char cTest[10] = "I Love You"; CString csTest; csTest.Format("%s", cTest); 출처 : http://blog.daum.net/sjdody/5693925 2011. 2. 14.
[개발/MFC] LPSTR LPCTSTR 위험 CStrgin -> char 으로 변환 (LPSTR)(LPCTSTR)csTest은 위험하다.!! -. 유니코드를 고려하지 않았을뿐 아니라 -. 위험하게 내부데이터를 접근합니다. CString strPP; char * chNN = (LPSTR)(LPCSTR)strPP; 이렇게 해서 chNN을 CString의 포인터로 가져 옵니다. (LPSTR)(LPCSTR)strPP 이 부분 에서 이유는 MSDN을 찾아보시면 아시겠지만 CString은 const char * 으로 만 받을수 있답니다. 그래서 (LPCTSTR)strPP 이런 형식으로도 사용합니다. 물론 const char *으로 return되겠죠.. 다시 char *을 필요하신다면 char * chNN = (char *)(LPCTSTR)strPP; 이런 식으로도 사용합니다 char *pstr =.. 2011. 2. 14.
[개발/VC++] 유니코드 버전으로 된 프로젝트에서 CString 를 char* 로 바꾸는 방법 MFC에서 유니코드 버전으로 된 프로젝트에서 CString 를 char* 로 바꾸는 방법은 유니코드 상태에서 CString 을 바로 CHAR* 로 바꾸는 것이 안됩니다. W2A 나 A2W 로 코드 변환을 하거나 wsprintf(); 함수를 이용 하면 됩니다. 유니코드는 사용 되는 바이트 수가 2바이트이고 1바이트 문자열로 변환하면 깨져 버리는 문자열 들이 있는데 처리를 해야 합니다. 유니코드를 멀티바이트 코드로 변환 하려면 char Text[80]; wsprintfA(Text, "%s", L"문자열" ); 멀티바이트 코드를 유니코드로 변환 하려면 WCHAR Text[80]; wsprintfW(Text, L"%s", "문자열" ); 변환될 문자열을 %s(대문자)로 wsprintf()함수를 사용합니다. ※ .. 2011. 2. 8.
반응형