파일에서 한글 한글자 읽어서 저장후 출력하려면 어떻게해야하나요?
피라
2023.04.01
질문 제목 :파일에서 한글 한글자 읽어서 저장후 출력하려면 어떻게해야하나요?질문 요약 :파일에서 한글 한글자 읽어서 저장후 출력질문 내용 :
파일에서 한글 한글자 읽어서 저장후 출력하려면 어떻게해야하나요?
파일에서 wide character를 읽는게 문제가 되고있어요파일.txt에는
ㄱㄴㄷㄹ
ㅁㅂㅅㅇ
ㅈㅊㅋㅌ
ㅍㅎ
가 들어있고 유니코드로 저장되어있고
프로그램의 소스코드는 다음과 같아요
#include stdio.h
#include windows.h
#include tchar.h
#include io.h
#include fcntl.h
int main()
{ file *fp;
tchar ch;
_setmode(_fileno(stdout), _o_u16text);
fp = _wfopen(l파일.txt,lrt);
ch = getwc(fp);
putwc(ch,stdout);
getchar();
return 0;
}그런데 실행해보면 한글 한글자가 출력이 안되네요 어떻게해야 하나요?
-
돌심장
_setmode(_fileno(stdout), _O_U16TEXT);
때문이 아닐까요. -
에드윈
저도 그렇게 해서 답변 달라그랬는데 안되더라구요... -_-;;;
-
매디
#include locale.h을 추가하고
출력에 앞서 selocale(LC_ALL, \korean\);을 호출하면 될겁니다.