String Literal 파싱.
안녕하세요 Geeks_Company 입니다.
현재 파싱 관련 작업 진행중인데요.
이번 기능은 그냥, String Literal 관련 처리 입니다.
현재 테스트 진행중에 직접 String 에 값을 입력하여 처리 하다 보니, 막상 Escape 처리가 안되서,
직접 파일에 저장한후 처리 했더니, Escape 가 인식되어 처리가 가능하네요.
간략한거라 캡쳐 2개로 설명을 끝낼까 합니다.
위의 소스에서 적용된 쌍따옴표 안에 쌍따옴표(escape – prefix)의 인식이 String에 직접 값을 입력 하면
알아서 필터링이 되서 직접 파일로 저장된후 처리를 해야 되네요.
제 어플은 소스를 대상으로 해서 분석을 하는거니 파일로 처리 하는게 맞는 것 같습니다.
이렇게 파싱 처리가 잘 되었네요.
Unicode 관련되서 이런저런 자료를 찾아 봤는데요. Unicode의 해결방법은 직접 퍼센트로 추측하는 것 말고는 없는 것 같습니다.
실제로, text 파일을 열게 되면, 앞에 2 ~ 5 바이트 정도가 어떤 unicode로 encoding 되었나를 알려주는데요.
문제는 2개의 바이트와 5개의 바이트 중 중첩 되는 바이트가 있다는데 있습니다.
어느 한쪽을 토대로 default 값을 세팅해야 되는 상황입니다.
Notepad Encoding problem 으로 검색을 하면 여러가지가 나오는데요.
저는 StreamReader로 처리 했습니다.
참고로 StreamReader constructor 의 2번째 파라미터에 bool 값을 던져주면, 알아서 어떠한 encoding 처리가 되었는지 detecting을 하네요.
이렇게 Encoding 값을 갖어 올수있습니다.
무식하게 제가 직접 unicode까지 건드릴 필요까지는 없을꺼 같습니다.
100% 라고 장담은 못해도 , 대다수의 case는 커버가 된다고 봅니다.
감사 합니다.
'습작 및 R&D' 카테고리의 다른 글
XML Parser 관련 자료. (0) | 2012.07.20 |
---|---|
XML 파싱 관련 자료. (0) | 2012.07.18 |
파라미터 확인법 (0) | 2012.07.14 |
함수에 로그를 찍는 기능 추가. (0) | 2012.07.12 |
파싱된 토큰을 토대로 파일 생성 하기. (0) | 2012.07.09 |