제목인지 아티스트인지 읽어서 찍어보면 저렇게 나오는데
내가 유니코드를 잘 모름 근데 저게 2바이트씩 있어서 유니코드나 utf8같은데
MessageBoxW써서 띄우면
---------------------------
오류
---------------------------
!糾곇Ⓓ뒱ࠀ咸裏⠀䤀䰀䰀䤀伀一䄀䤀刀䔀 刀䔀䌀伀刀䐀匀⤀
---------------------------
확인
---------------------------
이따구로 뜨는데 이거 어케해야함?
멀티바이트투와이드캐릭터 이런거 다해봐도 모르겠음
멀티바이트투와이드캐릭터 이런거 다해봐도 모르겠음
해결법좀
wchar_t utf8buf[1024];
ReadFile(hFile, data, size, 0, 0);
*(unsigned short*) &data[size] = 0;
MessageBoxW(0, data, 0, 0);
dump(data, size);
이런식으로함
dump는 화면에 데이터 찍는 함수
utf8 아닐까요
그리고 boost 쓰세요 제발 시벌년암
욕해서 죄송하구요 앞으론 boost 사랑해주셨으면 좋겠습니다
utf8 decode #include <boost/locale.hpp> std::string e = boost::locale::conv::from_utf<char>(chunk.c_str(), "EUC-KR");
사진보니까 unicode네요 왜 안될까요
boost를 안쓰셔서 그런것같습니다
http://puu.sh/gdC1s/e7333f5545.png
ey man u shurup man gorit?
C++아니고 C라서 저런거 못씀.. ㅠ
필드들 시작주소 잘못찍은건 아니고? 그리고 ID3 v1 이랑 v2 다른데 아무 파일이나 집은건 아니겠지.
2바이트 문자 (한글, 한자, 일본어 등등) 을 출력할때 1바이트 밀거나 당기게 되면 와장창 뒤로 다 깨진다. 당연하지만.
으 해결했네요 ㅅㅂ 콘솔에 찍혀있는 3D01
여기서 3D가사이즈고 띄어쓰기없이 출력한거라
01이 text encoding이었음 ㅅㅂ 그래서 다 밀린거였네