컴퓨터/Java2011. 1. 22. 14:34
Java 를 처음 공부하는 입장에서 여러가지 에디션 중에 무엇을 선택해야할지 고민된다.

그래서 비교 자료를 찾던 중 Java API Map 이라는 것을 접하게 되었는데 그림 하나로 간단히 정리되어 있어서 소개한다.



'컴퓨터 > Java' 카테고리의 다른 글

RIA 개발 도구 - Google Web Toolkit  (0) 2011.04.09
Java 개발 환경 구성(Eclipse, Plug-in 설치)  (0) 2011.04.07
Java Profiling  (0) 2011.01.17
Java 에서 Logging 처리  (0) 2011.01.17
Java 에서 *.ini 파일 읽기/쓰기  (1) 2011.01.17
Posted by jungtae17
컴퓨터/프로그래밍2011. 1. 21. 20:16
라이브러리나 API 호출 없이 간단한 방법으로 변환할 수 있다.
// std::string ==> std::wstring 변환
std::string  _str( "string" );
std::wstring _wstr;

_wstr.assign( _str.begin(), _str.end() );


// std::wstring ==> std::string 변환
std::wstring _wstr( L"string" );
std::string  _str;

_str.assign( _wstr.begin(), _wstr.end() );
Posted by jungtae17
컴퓨터/프로그래밍2011. 1. 20. 11:16
윈도우 프로그래밍 시 주로 MFC 를 사용하는데 파일 선택 대화상자(CFileDialog)는 있지만 폴더 선택 대화상자는 없다.

그래서 Win32 API로 간단히 폴더 선택 대화상자를 만드는 방법이 있어서 정리해 본다.


void OnBnClickedSelectFile()
{
	BROWSEINFO bi;

	TCHAR szTemp[ MAX_PATH ] = { 0, };

	TCHAR * pszPath = _T( "D:\\" );

	::ZeroMemory( &bi, sizeof( BROWSEINFO ) );

	bi.hwndOwner	= hWnd;
	bi.lpszTitle	= _T( "파일이 저장될 폴더를 선택해 주세요." );
	bi.ulFlags		= BIF_NEWDIALOGSTYLE | BIF_EDITBOX | BIF_RETURNONLYFSDIRS
						| BIF_STATUSTEXT | BIF_VALIDATE;
	bi.lpfn			= BrowseCallbackProc;
	bi.lParam		= (LPARAM)pszPath;

	LPITEMIDLIST pItemIdList = ::SHBrowseForFolder( &bi );

	if( ::SHGetPathFromIDList( pItemIdList, szTemp ) )
	{
		MessageBox( szTemp );
	}
}

static int CALLBACK BrowseCallbackProc( HWND hWnd, UINT uMsg, LPARAM lParam,
										LPARAM lpData )
{
	switch( uMsg )
	{
	case BFFM_INITIALIZED:		// 폴더 선택 대화상자를 초기화 할 때, 초기 경로 설정
		{
			::SendMessage( hWnd, BFFM_SETSELECTION, TRUE, (LPARAM)lpData );
		}
		break;

	// BROWSEINFO 구조체의 ulFlags 값에 BIF_STATUSTEXT 가 설정된 경우 호출
	// 단, BIF_NEWDIALOGSTYLE 가 설정되어 있을 경우 호출되지 않음
	case BFFM_SELCHANGED:		// 사용자가 폴더를 선택할 경우 대화상자에 선택된 경로 표시
		{
			TCHAR szPath[ MAX_PATH ] = { 0, };

			::SHGetPathFromIDList( (LPCITEMIDLIST)lParam, szPath );
			::SendMessage( hWnd, BFFM_SETSTATUSTEXT, 0, (LPARAM)szPath );
		}
		break;

	// BROWSEINFO 구조체의 ulFlags 값에 BIF_VALIDATE 가 설정된 경우 호출
	// BIF_EDITBOX 와 같이 설정된 경우만 호출됨
	case BFFM_VALIDATEFAILED:	// 에디터 콘트롤에서 폴더 이름을 잘못 입력한 경우 호출
		{
			::MessageBox( hWnd, _T( "해당 폴더를 찾을 수 없습니다." ), _T( "오류" ),
				MB_ICONERROR | MB_OK );
		}
		break;
	}

	return 0;
}
Posted by jungtae17
컴퓨터/Java2011. 1. 17. 21:01

'컴퓨터 > Java' 카테고리의 다른 글

RIA 개발 도구 - Google Web Toolkit  (0) 2011.04.09
Java 개발 환경 구성(Eclipse, Plug-in 설치)  (0) 2011.04.07
Java SE / EE / ME 비교  (0) 2011.01.22
Java 에서 Logging 처리  (0) 2011.01.17
Java 에서 *.ini 파일 읽기/쓰기  (1) 2011.01.17
Posted by jungtae17
컴퓨터/Java2011. 1. 17. 20:57

Java logging framework http://en.wikipedia.org/wiki/Java_logging_framework

로깅(Logging) 처리 http://www.java-school.net/java/Logging.php


java.util.logging 패키지 사용

java logging 시스템의 기본 설정 파일
 : %JAVA_HOME%\jre\lib\logging.properties 파일

'컴퓨터 > Java' 카테고리의 다른 글

RIA 개발 도구 - Google Web Toolkit  (0) 2011.04.09
Java 개발 환경 구성(Eclipse, Plug-in 설치)  (0) 2011.04.07
Java SE / EE / ME 비교  (0) 2011.01.22
Java Profiling  (0) 2011.01.17
Java 에서 *.ini 파일 읽기/쓰기  (1) 2011.01.17
Posted by jungtae17