비밀번호를 잊으셨나요?

비밀번호를 잊으셨나요? 비밀번호를 재설정하려면 이메일 주소를 입력해주세요.

계정이 있나요? 로그인

You must login to ask a question.

비밀번호를 잊으셨나요?

아직 계정이 없으신가요? 회원가입 하기

해당 질문을 신고하는 이유를 간단히 입력해주세요.

해당 답변을 신고하는 이유를 간단히 입력해주세요.

해당 유저를 신고하는 이유를 간단히 입력해주세요.

로그인회원가입

고캐드 – 캐드(CAD) 정보의 중심

고캐드 – 캐드(CAD) 정보의 중심 Logo 고캐드 – 캐드(CAD) 정보의 중심 Logo

고캐드 – 캐드(CAD) 정보의 중심 Navigation

  • Q&A
    • AutoCAD & CADian
    • Inventor & Solidworks
    • Revit & ArchiCAD
    • 자유질문
    • 기타
  • 커뮤니티
    • 오늘의이슈
    • 자유게시판
    • 익명게시판
    • 건의게시판
  • 자료실
    • 자료요청
    • 일반파일
    • 도면샘플
    • 유틸리티
    • 기타
  • 작품 갤러리
    • 그래픽
    • 캐드도면
    • 3D모델
    • 기타
  • 뉴스&이벤트
    • 공지사항
    • 뉴스
    • 전시/행사
    • 이벤트
    • 기타
검색
질문하기

Mobile menu

닫기
질문하기
  • 홈
  • 카테고리
    • AutoCAD & CADian
    • Inventor & Solidworks
    • Revit & ArchiCAD
    • 자유질문
    • 기타
  • 투표
  • 커뮤니티 그룹
  • Q&A
    • AutoCAD & CADian
    • Inventor & Solidworks
    • Revit & ArchiCAD
    • 자유질문
    • 기타
  • 커뮤니티
    • 오늘의이슈
    • 자유게시판
    • 익명게시판
    • 건의게시판
  • 자료실
    • 자료요청
    • 일반파일
    • 도면샘플
    • 유틸리티
    • 기타
  • 작품 갤러리
    • 그래픽
    • 캐드도면
    • 3D모델
    • 기타
  • 뉴스&이벤트
    • 공지사항
    • 뉴스
    • 전시/행사
    • 이벤트
    • 기타
홈/ 질문/Q 103601
다음
진행 중
Lv.0
등록일: 2015-03-112015-03-11T08:34:56+09:00 2015-03-11T08:34:56+09:00카테고리: AutoCAD & CADian

한글을 한자로 바꾸는 리습 요청 부탁드립니다.

제가 리습 초보라서..

숫자를 한자로 변환하는 리습을 찾아서

이걸 한글을 한자로 변환하는 리습으로 수정을 해볼려고했는데

잘 안되네요.ㅠㅠ

전을 田 대를 大 이런 방법으로 변경하는 리습이 필요합니다.

제가 찾은 숫자를 한자로 바꾸는 리습은 이겁니다.

;change character
(defun c:c2c (/ Sset obj str Cnt txt nstr)
  (vl-load-com)
  (if (setq Sset (ssget (list (cons 0 “TEXT”))))
    (progn
      (setq obj (mapcar ‘vlax-ename->vla-object (vl-remove-if ‘listp (mapcar ‘cadr (ssnamex Sset)))))
      (foreach x obj
        (setq str (vla-get-textstring x))
        (setq Cnt 1 nstr nill)
        (while (not (= (setq txt (substr str Cnt 1)) “”))
          (cond
            ((= (ascii txt) 48) (setq txt “零”)) ;0–> (ascii “0”)=48
            ((= (ascii txt) 49) (setq txt “一”)) ;1–> (ascii “1”)=49
            ((= (ascii txt) 50) (setq txt “二”)) ;2–> (ascii “2”)=50
            ((= (ascii txt) 51) (setq txt “三”)) ;3–> (ascii “3”)=51
            ((= (ascii txt) 52) (setq txt “四”)) ;4–> (ascii “4”)=52
            ((= (ascii txt) 53) (setq txt “五”)) ;5–> (ascii “5”)=53
            ((= (ascii txt) 54) (setq txt “六”)) ;6–> (ascii “6”)=54
            ((= (ascii txt) 55) (setq txt “七”)) ;7–> (ascii “7”)=55
            ((= (ascii txt) 56) (setq txt “八”)) ;8–> (ascii “8”)=56
            ((= (ascii txt) 57) (setq txt “九”)) ;9–> (ascii “9”)=57
            (t txt)
          )
          (setq nstr (append nstr (list txt)))
          (setq Cnt (1+ Cnt))
        )
        (vla-put-textstring x (apply ‘strcat nstr))        
      )
    )
  )        
  (princ)
)

여기다 한글을 추가하거나 ‘-‘같은 특수기호를 추가해봤는데 아예 한글이 삭제되거나 안됩니다.

  • 0
  • 10 10 답변
  • 62 조회
공유
  • Facebook

    관련 있는 질문들

    • 캐디안으로 도면을 열때 한글이 ???로 표시되는 문제
    • CADian Lisp
    • 캐디안에서 렌더링 기능이 지원되나요?
    • 동적블록 신축에서 길이를 늘릴때 최종 길이를 입력 또는 늘려야 하는 차이만큼의 길이를 입력

    10 답변

    • 작성 순
    • 최신 순
    • 공감 순
    1. aalan
    2. [Deleted User]
      2015-03-11T09:17:57+09:00답변 등록 답변 등록 일시 2015-03-11 9:17 am

      한글로 전이 한자로 全戰電展田  이렇게 한개가 아닌데…컴퓨터가 무슨 수로 매칭을 할런지요. 아예 사전을 탑재해야 되는데…

      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    3. [Deleted User]
      2015-03-11T09:52:13+09:00답변 등록 답변 등록 일시 2015-03-11 9:52 am

      제가 받은 숫자를 한자로 바꾸는 리습에서는 1을 一 2를 二 3을 三 0을 零 이런식으로 지정해서 바꾸게 해놨더라고요.  한글도 제가 필요한 한글만 몇개지정해서 미리 지정한 한자로 변경하고 싶은건데 잘 안되더라구요

      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    4. 우기로기 Lv.0
      2015-03-11T10:02:31+09:00답변 등록 답변 등록 일시 2015-03-11 10:02 am
      그 리습을 올리시면 아시는분이 고쳐줄겁니다.
      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    5. [Deleted User]
      2015-03-11T10:17:23+09:00답변 등록 답변 등록 일시 2015-03-11 10:17 am

      넵 올렸습니다.^^

      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    6. xcsh Lv.0
      2015-03-13T09:57:41+09:00답변 등록 답변 등록 일시 2015-03-13 9:57 am

      한글은 2바이트 문자입니다.
      한글 1글자는 영문 2글자이므로 한개만 교환하면 깨져버립니다.
      문자열교환으로  만들었으니 사용해 보세요.

      (defun c:c2c (/ Sset ch_data str )
         (vl-load-com)

         (setq ch_data ‘((“일” “一”)(“이” “二”)(“삼” “三”)(“사” “四”)(“오” “五”)
                         (“육” “六”)(“칠” “七”)(“팔” “八”)(“구” “九”)(“영” “零”))   )

         (setq Sset (ssget (list (cons 0 “TEXT”))))
         (mapcar ‘(lambda (x)
              (setq str (vla-get-textstring x))
              (mapcar ‘(lambda (y) (setq str (vl-string-subst (cadr y) (car y) str))) ch_data)
              (vla-put-textstring x str)
         )(mapcar ‘vlax-ename->vla-object (vl-remove-if ‘listp (mapcar ‘cadr (ssnamex Sset)))))
         (princ)
      );defun

      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    7. [Deleted User]
      2015-03-13T13:17:18+09:00답변 등록 답변 등록 일시 2015-03-13 1:17 pm

      아..그래서 안되거였군요.ㅠㅠ 감사합니다 ^^

      저 혹시 그럼 위에꺼랑 아래꺼랑 합칠려면 어떤부분을 수정해야하나요?숫자랑 한글 다 한자로 바꾸는방법이요..

      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    8. xcsh Lv.0
      2015-03-16T09:47:21+09:00답변 등록 답변 등록 일시 2015-03-16 9:47 am

      필요한 것을 넣어서 쓰도록 만든 것입니다. 
      ch_data 만 바꿔서 쓰세요.
        (setq ch_data ‘(   (“일” “一”)(“이” “二”)(“삼” “三”)(“사” “四”)(“오” “五”)
                                       (“육” “六”)(“칠” “七”)(“팔” “八”)(“구” “九”)(“영” “零”)
                                       (“1” “一”)(“2” “二”)(“3” “三”)(“4” “四”)(“5” “五”)
                                       (“6” “六”)(“7” “七”)(“8” “八”)(“9” “九”)(“0” “零”)        )   )

      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    9. [Deleted User]
      2015-03-17T09:56:20+09:00답변 등록 답변 등록 일시 2015-03-17 9:56 am

      한번씩만 인식을 해서 ‘121-1 전’ 이렇게 있으면 ‘一二1-1 田’ 이렇게 되더라구요..

      그래서 저걸 고칠려고 해볼려는데 자꾸 에러가 나네요 ㅠ

      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    10. xcsh Lv.0
      2015-03-17T18:59:24+09:00답변 등록 답변 등록 일시 2015-03-17 6:59 pm

      반복수행 추가하여 수정했습니다.
      (defun c:c2c (/ Sset ch_data str )
         (vl-load-com)
         (setq ch_data ‘(   (“일” “一”)(“이” “二”)(“삼” “三”)(“사” “四”)(“오” “五”)
                            (“육” “六”)(“칠” “七”)(“팔” “八”)(“구” “九”)(“영” “零”)
                            (“1” “一”)(“2” “二”)(“3” “三”)(“4” “四”)(“5” “五”)
                            (“6” “六”)(“7” “七”)(“8” “八”)(“9” “九”)(“0” “零”)        )   )
         (setq Sset (ssget (list (cons 0 “TEXT”))))
         (mapcar ‘(lambda (x)
              (setq str (vla-get-textstring x))
              (mapcar ‘(lambda (y) (while (vl-string-search (car y) str)
       (setq str (vl-string-subst (cadr y) (car y) str)))) ch_data)
              (vla-put-textstring x str))
         (mapcar ‘vlax-ename->vla-object (vl-remove-if ‘listp (mapcar ‘cadr (ssnamex Sset)))))
         (princ)
      );defun

      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter
    11. [Deleted User]
      2015-03-18T13:33:54+09:00답변 등록 답변 등록 일시 2015-03-18 1:33 pm

      와..감사합니다!!!!열심히 공부좀 해야겠어요 ㅠ

      • 0
      • 공유
        공유
        • 공유 Facebook
        • 공유 Twitter

    Sidebar

    질문하기
    공지사항

    • 국산 CAD ‘캐디안 2025’ 출시 사전 예약 진행 2024-09-27

    Adv 234x60

    aalan

    Adv 234x60

    aalan

    Adv 120x600

    aalan

    Explore

    • 홈
    • 카테고리
      • AutoCAD & CADian
      • Inventor & Solidworks
      • Revit & ArchiCAD
      • 자유질문
      • 기타
    • 투표
    • 커뮤니티 그룹
    aalan

    Footer

    Support

    • 회사 및 서비스 소개
    • 자주 묻는 질문
    • 문의하기

    Guide

    • 제휴/협업 안내
    • 광고 서비스 안내

    Policy

    • 서비스 이용약관
    • 개인정보 처리방침
    • 광고성 정보 수신 동의

    Contents

    • 고밍스토리
    • 리습 시리즈

    정소프트 | 사업자등록번호 : 677-40-00198 | 대표 : 정은숙 | 이메일 : gocad.manager@gmail.com
    주소 : 서울특별시 강서구 양천로 400-12, 6층 614,615,617호(등촌동, 더리브골드타워)
    Copyright. 2012-2024 GOCAD All rights reserved