목록분류 전체보기 (5)
Stackcat's Blog
입사 후 쓸 일이 없어서 점점 쓰는 방법을 잊고 있는 파이썬인데, 앞자리 대리님이 물어보셔서 찾아본 결과를 적어둔다. 일반적으로 서버나 기타등등 웹 쪽으로 작업하면 try-except 를 쓸 때가 있는데, 대부분은 try: ...except Exception as e: print(e) # 또는 if e.code in (400, 404) : ..... 로 에러메시지를 확인한다. 이 때 에러 코드만 보고 싶으면 e.code 식으로 하면 되는데, 이는 HttpException에 해당하고, 이번 경우는 해당 방식이 동작하지 않는 경우였다. 에러메시지는 'ClientException' has no attribute 'code' 같은 형식이었고, 이와 같은 'ClientException'의 경우 다음과 같은 구문을..
CRichEditCtrl을 사용할때는 대부분 rtf 파일을 읽어들여서 그대로 출력하는 경우가 많지만, rtf파일을 사용하지않고 수동으로 직접 데이터를 입력할 때가 있다. 이 때 ReplaceSel등을 사용하면 일부 언어의 경우 인코딩이 깨지는 등 제대로 출력이 되지않는데, 다음과 같이 SendMessage를 통해 데이터를 입력하도록하자. 사내 제품에서 사용중인 소스여서 일부 소스는 수정하여 게시하였음. {생략} map::iterator mpIter_cs = m_mpExtCategoryString.begin(); CString strResultExtList; // 분류된 확장자들을 순서대로 타이틀 생성하며 출력한다. for(;mpIter_cs != m_mpExtCategoryString.end(); mpI..
서버에서 UTC 값을 받아왔을 때가 있다. 이 값은 문자열로, 다음과 같은 형식일 것이다 "2108-05-04 06:12:04" 이 값을 로컬에서 보여줄 때는 로컬시간으로 보여줘야한다. 아래와 같이 변환 할 수 있다. Cstring strDateOfEnrollUTC = _T("2108-05-04 06:12:04"); // 서버로부터 받아온 UTC 시간값. 현재는 더미로 그냥 넣어줌 COleDateTime tmUTC; SYSTEMTIME stmUTC= {0}; SYSTEMTIME stmLocal = {0}; try{ if( !tmUTC.ParseDateTime(strDateOfEnrollUTC) ) // 우선 스트링을 COleDateTime으로 변환 throw 0; if( !tmUTC.GetAsSystem..
파일을 읽어보려했더니 한글이 깨진다. setLocale(LC_ALL, ""), "Korean" 해도 깨진다. 아래처럼 하자 FILE *fStream; if(_tfopen_s(&fStream, _T("\PolicyInfoList2.txt"), _T("rt, ccs=UNICODE")) != 0) OutputDebugString(_T("PolicyInfoList.txt Load Fail...\n")); else{ CStdioFile file(fStream); CString strLine; while(file.ReadString(strLine)) { vector vfData = CommonUtil::SplitString(strLine.GetBuffer(0), _T(", ")); m_mpPolicyComment[..
CFile file; WORD wd = 0xFEFF; // Unicode 식별자 file.Open(_T("C:\\kyt_test\\[AD]Policy_List.txt"), CFile::modeWrite|CFile::typeBinary); file.Write(&wd, 2); // 문서 맨 앞에 Unicode라고 써준거라고 생각하면 됨. CString strTemp; strTemp.Format(_T("%s\r\n"),mpIter->first); // mpIter : map file.Write(strTemp, strTemp.GetLength()*sizeof(TCHAR)); // Length * sizeof(TCHAR) file.Close();