본문 바로가기

쓰기

안녕하세요...
요즘 Aral이란 프로그램 덕에 갑자기 컴퓨터가 좋아진 사람입니다.
다시한번 모든 개발자분께 감사하구요..

저도 아주아주 미약한 실력이지만 .. 참여해 보려고 합니다. (Aral에 도움될 실질적 가능성 0.0001%)
제가 관심가지는 부분은
단순님이 작업하시는 EzTranceXP 사전파일 편집기인데요...(이하 단순파일)

어찌어찌해서 단순파일 포멧구조는 완벽히는 아니지만 풀어냈거든요..
그래서 개인적으로 단순님파일 갱신되면 개인적으로 만든 사전파일이랑 합쳐서 사용하고 있는데요
그게 일단은 단어 하나 추가하는데도 이버튼 저버튼 눌러가며 복잡한데다가
문제는 컴이 느려서 그런지... 단어가 많아져서 그런지 ....
EzTrance를 이용해서 새 단어하나 추가하고 저장하는데 걸리는 시간이 장난 아니게 걸리거든요 (해보신분은 알거에요)
오늘 보니 단순님본인도 더 이상 제보단어를 처리하기 어렵다고 말씀하시더라구요(그 노고가 어느정도인지 짐작이감)

그래서 생각에 텍스트 파일로 작업한 다음 이걸 일괄적으로 사전 파일로 변경시키면
편하겠다 생각이 들더라구요.

문제는 메모장에서 텍스트 파일로 작업하면 UTF코드로 작성되어지는데...
이걸 그 사전파일로 만들려면 일어부분은 SHIFT-JIS 한글은 KS코드로 변환해야 하거든요
근데 이런쪽에는 제가 전혀 아는게 없어서(다른쪽도 마찬가지지만)
그래서 이렇게 도움을 요청합니다.


UTF->SHIFT-JIS 변환 소스나 라이브러리
UTF->KS 변환 소스나 라이브러리
이랑 기왕이면 이 반대되는 코드
등이 알고 싶습니다.

프로그램은 예전 도스시절에 잠시 해보았구요...
지금 가지고 있는 컴파일러는 VC 6.0이에요
많은 도움부탁드립니다.


분류 :
Talk
조회 수 :
13984
등록일 :
2008.09.02
14:40:55
엮인글 :
https://arallab.hided.net/3767/4d5/trackback
게시글 주소 :
https://arallab.hided.net/board_devtalk/3767

봉래인형

2008.09.02
18:32:14

* MultiByteToWideChar 로 UTF 를 wchar 로 변환 이후, wchar 를 WideCharToMultiByte 로 SHIFT-JIS 로 변환.
* iconv 계열 함수 사용.

대충 이 두가지 방법이...

Hide_D

2008.09.02
22:43:11
버그가 있지만 참고해 보세요.
이지트랜스 사용자 사전 변환기

호기심맨

2008.09.08
12:11:21

아 답변이 늦었습니다.
가르켜 주신거 적용하고 확인하고 하다보니 시간이 훌쩍 지나가버렸네요
너무 잘되네요
봉래인형님 히데님 너무 감사합니다.

아 그런데 하다보니 의문이 하나 더 생겨서요....염치불구하고 다시 재질문드릴게요
메모장으로 UTF-8포멧으로 저장된 파일불르면 항상 처음에 0xbfbbef코드가 붙드라구요
이것이 모든 UTF-8문서에는 반드시 붙여줘야 하는 헤더인지
아니면 메모장이란 프로그램에서만 특수하게 쓰이는 코드인지... 궁금하네요

문제는 이데이타가 MultiByte...거쳐 WideTo...로 ShiftJis로 컨버트되면 0x63 '?'으로 기록되기 때문에...
어떤 용도로 쓰이는 데이타인지 알아내야 좀더 깔끔한 프로그램이 될거 같네요..
혹시 아신다면 다시한번 도움 부탁드립니다. (꾸벅) 

아차차.... 그리고 하나만 더 질문 올릴게요..
문자열이 UTF-8이나ShiftJis그리고 KS코드인지 검사할수 잇는 간단한 함수같은게 있나요?

Hide_D

2008.09.16
23:09:22
답변이 늦었습니다.
죄송합니다 ^^;;

1. 유니코드로 기록된 경우에 유니코드임을 알리기 위해
쓰이는 BOM기호라고 합니다.
있어도 되고 없어도 됩니다만
비유니코드 파일에선 없애줘야겠죠?

2. MS-949와 Shift-JIS를 따로 구분해 주는 녀석은 아쉽게도 없습니다. (유니코드 <-> 비 유니코드 구분은 가능)
List of Articles
번호 제목 글쓴이 조회 수sort 추천 수 날짜 최근 수정일
공지 Talk [필독] 테스트필터 사용시 주의사항 라파에 155439   2008-08-03 2008-12-16 00:03
64 Talk 어제 말씀드렸던것... 알아냈습니다. file 나는누구인감? 14332   2008-07-10 2008-07-10 14:17
 
63 Talk 음 제가 컴퓨터를 못하는 사람이라 뻘글일 수도 있겠지만.. [2] 쥬빌 14389   2008-12-30 2008-12-30 12:14
아랄 트랜스의 장점이 게임상의 대사가 바로 한글로 변환 표기되는 것이라 보는데요. 번역률을 높이기 위해 번역본이 있는 게임들은 ez트랜스가 아닌, 미연시 번역본 text과 연동하여 쓸수는 없을까요? ez와의 연동 구조를 잘 모르겠으나..게임상의 일어를 ez...  
62 Talk 0.3의 설계가 안되네요;; [6] 아랄 14431   2008-11-19 2009-01-06 01:22
미연시에 국한된 유틸이 아닌 이제 떳떳한(?) 범용 유틸로 거듭나려하니 욕심만 많아지고,, 리소스 편집기능, 후킹체인 다이어그램 표시 등... 모든 컨셉을 적용하자니 서드파티 플러그인 규격이 복잡해지고 으으.. 아무래도 0.2 레이아웃을 그대로 가져가야 ...  
61 Talk DumpText2 계획안 [6] file Hide_D 14432   2008-10-02 2009-01-06 01:24
 
60 Talk [오류?] 아랄0.3 실행하여 autofinder 적용시 오류인지... [1] file 암흑마제 14512   2009-12-20 2009-12-20 13:54
 
59 Talk Windows7에서 0.3 현재시점으로 안돌아갑니다.ㅜ [6] Hide_D 14656   2009-12-04 2009-12-09 23:27
이유가 뭘까요  
58 Talk 일단 기리기리 미 번역 파트(선택지) 보고? file Hide_D 14675   2008-07-10 2008-07-10 00:34
 
57 Talk 파일을 다운로드 받을때 한가지 잠재적인 문제점을 발견했습니다. [2] Hide_D 14677   2009-12-18 2009-12-18 18:17
지금 보니까 사이트에 파일을 올려두고 파일을 받아가는 구조로 되어 있는듯 한데, 이 다운로드 고유 주소가 바뀔 수 있다는게 문젭니다. [ex : 업로더가 DenyWord.ini를 수정하기 위해 기존에 올려진 DenyWord.ini를 지우고 새로 올린 경우] 이 때 1. 사용자...  
56 Talk AralTrans 필터 물갈이할 예정입니다.... [1] Hide_D 14725   2009-05-21 2009-05-22 01:55
일단 제가 방학을 시작하기도 했고 하니 아랄트랜스 내에서 제가 제작한 필터를 싹 물갈이해볼 생각입니다. 우선 물갈이 대상 CustomDic 0.4 KDC CustomScript v2 DumpText v2 FixLine v3 작업을 위해서 다음과 같은 라이브러리를 만들어서 걍 복붙 시전할 계...  
55 Talk 번역 플러그인 난해한 문제???? [3] 호기 14864   2009-03-15 2009-10-20 18:06
지금 ML_Trans라는 번역 플러그인을 만들고 있는데 좀 이해가 안가는 문제가 생기네요.. 아랄에 적용시킨후 다른 번역 플러그인으로 바꿀때는 아무 문제가 안생깁니다 그러니까 번역 플러그인을 EzTransXp<->ML_Trans로 마구 여러번 바꾸어도 문제는 안일어 납...  
54 Talk [질문] HKCU/Software/AralGood/M2WAddr ? [3] whoami 14960   2008-07-08 2008-07-08 19:14
// CATCodeMgr::Init(ATCodeMgr.cpp) 중에서... // 어플로케일 관련 함수 m_sTextFunc.pfnOrigMultiByteToWideChar = (PROC_MultiByteToWideChar) CRegistryMgr::RegReadDWORD(_T("HKEY_CURRENT_USER\Software\AralGood"), _T("M2WAddr")); m_sTextFunc.pfnOri...  
53 Talk 문자열의 길이를 반영하는 '필터' [4] Hide_D 15027   2010-01-19 2010-01-22 01:28
문자열 길이가 고정되어서 포인터 바꿔치기를 통해서도 길이가 바뀌지 않는 것들이 있는데, 이놈들을 위해 길이를 반영하는 필터가 있으면 좋을것 같습니다. 인자로 반영할 메모리 주소 1. 모듈(메모리 주소) 기반 2. 레지스터 기반 으로 ATCode의 그것과 비슷...  
52 Talk 0.3 SVN 경로 수정했습니다! [2] Hide_D 15071   2009-12-23 2009-12-23 14:03
현재 아랄트랜스가 있는 서버에 SVN이 추가되어서 속도 향상을 목표로 SVN경로를 다음과 같이 변경했습니다. svn://aralgood.com/araltrans03/trunk revision은 몇가지 실수 빼곤 22개 리비젼 그대로 옮겨두었습니다. 다만 커밋 날짜가 달라지게 되므로 경로를...  
51 Talk 줄 바꿈을 n으로 하는 게임에서 벽뚫기 방지 해결책 [1] Hide_D 15082   2008-07-12 2008-07-12 18:09
http://aralgood.com/zbxe/33245 여기 스샷보고 생각난건데, 자릿수를 지정해 주고, n을 새로 먹여주면 벽뚫기가 줄어들지 않을까요.  
50 Talk 번역함수가 불렸을 때 자신이 불린 컨텍스트 이름을 아는 문제.. [8] whoami 15151   2009-12-24 2009-12-26 15:34
4. procTranslate 로 지정된 번역함수가 불렸을 때 자신이 어떤 컨텍스트로 불렸는지 아는 방법 현재 컨텍스트의 이름을 얻는 것 외에는 대부분 원하는게 가능할 것 같습니다. pObjectExtention 에 어떤 객체의 포인터를 넣어 놓고, procTranslate 가 호출되었...  
49 Talk 0.3에서 전국란스의 경우 [1] Hide_D 15179   2009-12-13 2009-12-14 02:10
ats파일을 만들어서 동작할경우 문제가 산넘어 산입니다. 1. 주소 문제 2. Rance7으로 바꾸었을때 AppLocale의 미묘한 작동 ㄹㅋ  
48 Talk ats파일에 아이콘을... [2] Hide_D 15493   2009-12-23 2009-12-23 14:27
역시 ats에 아이콘을 넣는 게 좋을 것 같습니다. 그래서 생각해본 방법 1. xml에 <icon></icon>항목을 추가해서 추가할 ico 파일을 변환해서 넣기 0xff -> 'FF' 식으로 하면 실제 ico 파일에 대해서 대략 용량이 2배가 되겠지만 '별 수 없죠' 2. ats에 대한 Ic...  
47 Talk [버그 보고?]브라반 드디어 원인을 찾았습니다. orz [6] Hide_D 15593   2008-07-08 2008-07-09 16:23
엉엉엉엉엉엉엉엉엉엉엉엉엉엉엉엉엉엉엉엉엉엉엉 0x3010 0x3011이용해서 대사 처리하는 녀석들을 찾아보았더니 http://aralgood.com/zbxe/26860 루이는 토모를 부른다. 가 있더군요. 요건 그 일부분! ------------------------------------------------------...  
46 Talk 문자열 길이에 대한 건의 file G2m 15608   2010-01-21 2010-01-21 18:44
 
45 Talk XML 파싱 부분에 문제가 하나 있네요. Hide_D 15772   2009-12-30 2009-12-30 21:42
xml 태그에서 그 태그에 대한 내용이 없을경우 <tag></tag> 로도 표현할 수 있지만 <tag/> 로도 표현 가능합니다. 현재 파서 부분을 보니 <tag/>형식의 태그에는 대응이 되어 있지 않은것 같습니다.