안녕하세요
제가 지금 ftp 펑션들을 사용해서 첨부파일을 파일서버로 저장되게 하는 프로그램을 만들고 있습니다.
그런데 펑션을 사용해서 문서를 저장하다보니까 한글명(가나다.doc)으로 된 파일을 올릴수가 없어서
파일명에 한글이 들어있을경우 문서명을 바꿔달라고 메시지창을 띄우려 합니다....
혹시 한글이 포함되어있는지 알수있는 방법이 있을까요?
*좋은하루 보내세요*
댓글 4
-
버미!
2010.08.05 17:14
-
아밥맨
2010.08.05 18:39
간단하게 서브루틴을 만들어봤습니다. 참고하세요.
lv_str에 값 넣고 서브루틴 실행 시, 한글이 포함되어있으면 lv_chk에 'X'가 들어오게 해봤습니다.
DATA : lv_str TYPE c LENGTH 100,
lv_chk TYPE c LENGTH 1.
lv_str = 'AB테스트CD'.
PERFORM check_2bytes_char USING lv_str CHANGING lv_chk.
CHECK lv_chk = 'X'.
WRITE '한글이 포함되어 있습니다.'.
*&---------------------------------------------------------------------*
*& Form CHECK_2BYTES_CHAR
*&---------------------------------------------------------------------*
FORM check_2bytes_char USING p_str
CHANGING p_chk.
CHECK p_str IS NOT INITIAL.
CLEAR p_chk.
DATA: lv_offset TYPE i, " HEXA location
lv_len TYPE i. " Input String length
FIELD-SYMBOLS : <str>,
<xstr> TYPE x.
lv_len = STRLEN( p_str ).
ASSIGN p_str TO <str> TYPE 'X'.
CLEAR lv_offset.
DO lv_len TIMES.
lv_offset = sy-index - 1.
ASSIGN <str>+lv_offset(1) TO <xstr>.
IF <xstr> >= '80'. " 2Byte Character
p_chk = 'X'.
EXIT.
ENDIF.
ENDDO.
ENDFORM. " CHECK_2BYTES_CHAR -
beginer
2010.08.05 19:18
와우... 답변들 감사합니다~~~
저도 언능 실력키워서 도움될수 있도록 노력할게요~
-
sweety
2010.08.06 03:33
TRUNCATE_MULTIPLE_BYTE_STRING
아래 코드 참조하세요..응용 필수.
REPORT ztest.
PARAMETERS : p_str TYPE string.
START-OF-SELECTION.
* lv_str에 파일에 포함될 수 있는 특수문자도 포함해야 함.
DATA : lv_str TYPE string VALUE 'abcdefghijklmnopqrstuvwxyz0123456789',
lv_len TYPE i,
lv_idx TYPE i.
TRANSLATE p_str TO LOWER CASE. "영어는 소문자로 변경
lv_len = STRLEN( p_str ).
DO lv_len TIMES.
IF p_str+lv_idx(1) NA lv_str. "lv_str에 포함되지 않는다면 한글이 있음
WRITE:/'Result : True'.
EXIT.
ENDIF.
ADD 1 TO lv_idx.
ENDDO.