zqlitie 发表于 2009-7-12 08:31:00

【求助】哪位朋友帮忙做个CAD文本替换程序

<p>哪位朋友帮忙做个CAD文本替换程序:<br/><br/></p><p>读取文本文件,去文本文件每行前一部分(1-20位,去掉空格),在CAD图中查找到(完全匹配),用文本文件此行的后部分(21-120位,去掉空格)替换掉。<br/><br/></p>

ZZXXQQ 发表于 2009-7-12 10:35:00

不知道是否如楼主所说,试试看。

;文本替换 明经 ZZXXQQ 2009.7.12
;读取文本文件,去文本文件每行前一部分(1-20位,去掉空格),在CAD图中查找到(完全匹配),
;用文本文件此行的后部分(21-120位,去掉空格)替换掉。
(defun c:tt ()
(setq nm (if nm nm "")
       nm1 (if nm1 nm1 "")
       ln1 "")
(if (setq nm (getfiled "打开文件名" nm "txt" 6))
(if (setq nm1 (getfiled "保存文件名" nm1 "txt" 1)) (progn
   (setq fp (open nm "r"))
   (setq fp1 (open nm1 "w"))
   (while (setq ln (read-line fp))
    (setq sl (strlen ln))
    (if (> sl 20) (progn
   (setq ln1 (substr ln 29) sl1 (strlen ln1) i 1 ln2 "")
   (repeat sl1
      (if (/= (setq tn (substr ln1 i 1)) " ")
       (setq ln2 (strcat ln2 tn))
      )
      (setq i (1+ i))
)
   (princ (strcat ln2 "\n") fp1)
    ))
   )
   (close fp)
   (close fp1)
))
)
(princ)
)

zqlitie 发表于 2009-7-12 11:22:00

<p>首先,谢谢 <strong><font color="#da2549" face="Verdana">ZZXXQQ ,帮我做这个程序,但是可能是我说的不是太明白,我要替换的是图面上的文字,</font></strong></p><p><strong><font color="#da2549" face="Verdana"></font></strong></p><p><strong><font color="#da2549" face="Verdana">比如:txt文本文件的内容是</font></strong></p><p><strong><font color="#da2549" face="Verdana">11&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; aa</font></strong></p><p><strong><font color="#da2549" face="Verdana">22&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; bb</font></strong></p><p><strong><font color="#da2549" face="Verdana">要把图面上的11改为aa,22改为bb</font></strong></p><p><strong><font color="#da2549" face="Verdana"></font></strong></p>

鄂西西北狼 发表于 2015-5-9 20:32:30

顶一个顶一个顶一个顶一个顶一个

chaiyadong 发表于 2020-10-14 15:48:43

页: [1]
查看完整版本: 【求助】哪位朋友帮忙做个CAD文本替换程序