# GetText로 내용검색시 반환값의 의미와 법조문 검색이 안되는 이유가 궁금합니다

**URL:** <https://forum.developer.hancom.com/t/gettext/1105>\
**Category:** 한글 오토메이션\
**Created:** [11월 29, 2023, 7:05오전 UTC](https://forum.developer.hancom.com/t/gettext/1105 "2023-11-29T07:05:41Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![user147](https://avatars.discourse-cdn.com/v4/letter/u/b9bd4f/32.png) [@user147](https://forum.developer.hancom.com/u/user147)\
**Post date:** [11월 29, 2023, 7:05오전 UTC](https://forum.developer.hancom.com/t/gettext/1105/1 "2023-11-29T07:05:42Z")

</div>

안녕하세요  
C#으로 한글파일에서 검색하는 코드를 만들고 있는데요

지금까지 만든 코드입니다  
객체생성 \> open \> initscan \> gettext로 검사가 전부입니다

var hwp = Activator.CreateInstance(Type.GetTypeFromProgID(“HWPFrame.HwpObject”));  
hwp.Open(filePath, ext, null);  
hwp.InitScan(“”, 0x0077, 0, 0, -1, -1);  
while (true){  
string text = “”;  
int ret;  
ret = hwp.GetText(out text);  
if (ret == 0) //마지막줄이면 끝냄  
{  
break;  
}  
else  
{  
Debug.WriteLine(text);  
}  
}

궁금한점이 두가지 있습니다  
-첫번째는 매뉴얼에 GetText의 반환값에서 0은 텍스트 정보 없음 / 1은 리스트의 끝이라고 되어 있는데요  
한글파일 처음부터 마지막까지, 모든 내용을 검색하고 있는데 0으로 해야 되나요, 1로 해야 되나요?  
0과 1의 의미 차이가 궁금합니다.  
-두번째는 법조문 형식으로 된 한글파일이 검색되지 않는다는 것입니다.

[법규정](https://www.law.go.kr/%ED%96%89%EC%A0%95%EA%B7%9C%EC%B9%99/%EA%B5%90%EC%9B%90%ED%9C%B4%EA%B0%80%EC%97%90%EA%B4%80%ED%95%9C%EC%98%88%EA%B7%9C)

이러한 법조문을 한글파일로 받아서 검색하면 gettext를 하여도 내용을 가져오지 못합니다…

도움 부탁드립니다 감사합니다!!

---

<div class="post-metadata">

**Author:** ![bhjung](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.developer.hancom.com/bhjung/32/259_2.png) [@bhjung](https://forum.developer.hancom.com/u/bhjung)\
**Post date:** [11월 29, 2023, 9:03오전 UTC](https://forum.developer.hancom.com/t/gettext/1105/2 "2023-11-29T09:03:10Z")

</div>

안녕하세요 ,

1. 리턴값은 아래와 같습니다.  
0 = 텍스트 정보 없음.  
1 = 리스트의 끝.  
2 = 일반 텍스트.  
3 = 다음 문단.  
4 = 제어문자 내부로 들어감.  
5 = 제어 문자를 빠져 나옴.  
101 = 초기화 안됨. (InitScan() 실패 또는 InitScan()를 실행하지 않  
음)  
102 = 텍스트 변환 실패

2. 

보면 법제처에서 받는 hwp의 경우 hwp가 아닙니다 … hml 파일로 저장이 되는대요. 저희 엔진이 아닌 다른 방식으로 hml을 만드는것 같습니다. 해서 오류가 발생하는것 같은대요  
해당 파일을 열어 hwp 또는 hwpx로 저장후 테스트해보시길 바랍니다.  
감사합니다 ^^

---

<div class="post-metadata">

**Author:** ![user16](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.developer.hancom.com/user16/32/785_2.png) [@user16](https://forum.developer.hancom.com/u/user16)\
**Post date:** [11월 29, 2023, 11:39오전 UTC](https://forum.developer.hancom.com/t/gettext/1105/3 "2023-11-29T11:39:01Z")

</div>

\<GetText()[0]의 0과 1 차이에 대해\>

일반적인 GetText 탐색의 경우 문서 끝에 도착하면 상태값 1을 리턴합니다.

상태값 0은 (일종의 오류? 느낌으로) 조금 특수한 경우에 발생하는데,  
예를 들어 while문으로 GetText 탐색 중  
특정 단어를 찾아 수정하다 문단수가 바뀌는 경우 등에  
다음 차례 GetText()의 상태값으로 0을 리턴하게 됩니다.

> while문의 종료조건으로 상태값==1만 입력한 경우 무한루프가 발생하게 돼요ㅜ

이밖에도 상태값 0을 리턴하는 몇 가지 경우가 있었던 것 같은데,  
예를 들면 hml파일에서 GetText를 돌리면 문서 끝에서 0을 리턴하기도 합니다.

지금은 괜히 겁나서 매번 `while state <= 1:` 식으로 코딩을 하게 되네요ㅋ

도움이 되었길 바랍니다.  
행복한 하루 되세요^^

---

<div class="post-metadata">

**Author:** ![user16](https://sea2.discourse-cdn.com/flex016/user_avatar/forum.developer.hancom.com/user16/32/785_2.png) [@user16](https://forum.developer.hancom.com/u/user16)\
**Post date:** [11월 29, 2023, 11:55오전 UTC](https://forum.developer.hancom.com/t/gettext/1105/4 "2023-11-29T11:55:07Z")

</div>

법제처 국가정보법령센터는 저도 종종 사용했던 사이트인데요.  
(다른 프로그래밍언어라서 그런지 모르겠지만)  
파이썬에서는 확장자나 포맷(hml) 관련해서도  
한 번도 문제가 된 적이 없었습니다.

방금도 다시 시도해보고, 잘 되는 것을 확인했습니다.

![녹화_2023_11_29_20_53_24_623](https://us1.discourse-cdn.com/flex016/uploads/hancom_dev_forum/original/1X/17e7ae72d3efb387ae48950cb29460475ca90894.gif)

> 다만 hml파일의 포매팅 태그 부분도 문단으로 간주하는지 빈 문단 몇 개가 더 나오기는 합니다ㅜ  
> 그리고, hml 포맷의 문서를 GetText로 스캔할 때 문서 끝에서 상태값으로 0을 리턴하네요! 참고해 주시기 바랍니다.

행복한 하루 되세요!ㅎ
