[ FinalFantasyIX ] - 한글로 수정하자.

저번에 "클때" 부분까지 완성되어 있었다.

"작을때" 부분을 손대려고 했지만....로직이니 알고리즘이니 생각나는게 전혀 없고..

소스도 복잡하고 난잡하고 지저분해서 그런지 알수없고.....(.....)

 

하나하나 알고리즘을 집어 가고 있을 무렵.....

"어라..그냥 갔다 써도 되겠는데.."

그것이였다.. "클때" 나 "작을때"나 같은 코드를 쓰면 될것 같았다.

 

앞/수정할부분/뒤 이렇게 3개의 부분으로 분활한 뒤에 각각의 사이즈를 얻어 와서

새롭게 데이터를 조합하는 식의 알고리즘이여서 문자열이 크던지 작던지 모두 적용 되는 것 같았다. 내 예상은 아주 잘 맞았고, 다시 한번 "잘짰다. 후후" 라는 생각을 들게 했다. -_-

 

만약 분활해서 작업하지 않았더라면 나는 지금쯤 "작을때" 부분을 코딩하고 있었을 것이다. ㅡ_ㅡa;

역시 프로그램의 소스는 유연성과 범용성을 가저야 된다. 오늘은 이걸 아주 깊게 느꼈다.

다음에 내가 작업한 부분은 자잘한 부분들하고

 

없는 글자를 채크 하는 부분이였다.

한글 고유번호 표를 읽어와서 현재 수정한 데이터에서 표에 없는 글자가 있는지 없는지를 판별하는 코드이다.

 

수정해야될 데이터에는 문자와 숫자가 뒤죽박죽 섞여 있다는게 가장 큰 문제점 이였다.

"3ageer00235아3카34%아아45435"

즉 1byte와 2byte가 아주 재미있게 섞여 있다. -_-;;;;;

 

어떻게 걸러내야 되는지 무척 난감했고, Ps 기준으로 Byte를 새는 함수 (GetLen이라는...)를 만들다가 포기한것도 바로 이 부분 때문이였다. 그런데 오늘 그 해결책을 찾게 되었다.

아직 제대로 굴러가는지는 잘 모르겠지만...

 

어쨌든 되긴 된다. 그것은 0x80 (128) 에 있었다.

데브피아에서 검색하다보니까 나왔다. 한글은 Byte형으로 썼을때 0x80 이상의 숫자가 된다는 그런거였다.

 

처음에 거기에서 "0x80 이 꼭 들어 있다." 이런식으로 답글이 있어서 살짝 삽질을 하던 도중..

"혹시 0x80이상의 숫자가 아닐까?" 하는 의문이 딱 맞았다.

 

이것을 기준으로 한글과 다른 코드들을 때어 낼 수 있었다.

음 일어에 적용되는지 안되는지는 잘 모르겠지만...테스트 도중에 문제는 없었다. (일어로 테스트 한건 단 한번 -_-)

 

이제 데이터를 수정하는 것 까지는 거의 완벽하게 된다.

수정된 데이터를 File로 쓰기만 하면 완성된 한글대사 파일이 나오는 것이다!!!!

이건 언제 할수 있을지 몰겠네 ㅡ_ㅡa;;;

칼루
작업일지 2004. 9. 5. 14:23
,
Powerd by Tistory, designed by criuce
rss