snigefqb 发表于 2015-3-24 21:24:53

在使用read函数时出现乱码现象(付图与代码)

txt文件与图在同个目录下测试(defun c:tt ()
(princ "\n运行后出现以下问题 read 函数后数据有所改变,出现乱码现象,\n 所有第3列的孙绪才全部变成   王永春了\n如 107 148 149 行")
   (setqjmsb-f (open(strcat (GETVAR "DWGPREFIX") (setq $(vl-string-subst ".txt" ".dwg" (GETVAR "DWGNAME")))) "r"))
(if (vl-string-search "," (read-line jmsb-f))
    (while (setq jmsb-zb (read-line jmsb-f))
    (while (vl-string-search ",,,," jmsb-zb)
      (setq jmsb-zb (vl-string-subst " 0 0 0 " ",,,," jmsb-zb))
    )          ;end-while;用空格替换","
    (while (vl-string-search ",,," jmsb-zb)
      (setq jmsb-zb (vl-string-subst " 0 0 " ",,," jmsb-zb))
    )
    (while (vl-string-search ",," jmsb-zb)
      (setq jmsb-zb (vl-string-subst " 0 " ",," jmsb-zb))
    )
    (while (vl-string-search "," jmsb-zb)
      (setq jmsb-zb (vl-string-subst " " "," jmsb-zb))
    )
    (setq jmsb-zb (read (strcat "(" jmsb-zb ")"))
    jmsb    (cons jmsb-zb jmsb)
    )
)
    (while (setq jmsb-zb (read-line jmsb-f))
    (while (vl-string-search "\t\t\t\t" jmsb-zb)
      (setq jmsb-zb (vl-string-subst " 0 0 0 " "\t\t\t\t" jmsb-zb))
    )          ;end-while;用空格替换","
    (while (vl-string-search "\t\t\t" jmsb-zb)
      (setq jmsb-zb (vl-string-subst " 0 0 " "\t\t\t" jmsb-zb))
    )
    (while (vl-string-search "\t\t" jmsb-zb)
      (setq jmsb-zb (vl-string-subst " 0 " "\t\t" jmsb-zb))
    )
    (setq jmsb-zb (read (strcat "(" jmsb-zb ")"))
    jmsb    (cons jmsb-zb jmsb)
    )
)
    )
(close jmsb-f)
)
页: [1]
查看完整版本: 在使用read函数时出现乱码现象(付图与代码)