明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 122|回复: 6

求大神一个AutoCAD2020 的 LISP 程序,用于将csv表格中的数据转换为属性块的属性值

[复制链接]
发表于 2024-4-24 08:38 | 显示全部楼层 |阅读模式
50明经币
本帖最后由 --访-- 于 2024-4-24 13:46 编辑

求大神帮写一个 LISP 程序,用于将 CSV 表格中的数据转换为属性块的属性值,程序会提示选择一个图框,然后选择数据表的行,循环并将逐一匹配到属性块中。
以下代码为AI生成,请帮忙看下,这个代码加载到CAD2020里有错误

(defun cCSV ()
  ;; 选择CSV文件
  (setq csvPath (getfiled 选择CSV文件  csv 1))
  (if (or (null csvPath) (= csvPath ))
    (progn
      (princ n没有选择文件。)
      (exit)
    ))

  ;; 读取CSV文件内容
  (setq csvData (vl-file-read csvPath))
  ;; 将CSV数据按行分割
  (setq csvLines (strcat ( (vl-string-subst )( n csvData) )))
  ;; 将每行数据转换为列表
  (setq csvLines (read csvLines))

  ;; 获取属性名称,并去除可能的引号
  (setq headers (mapcar (function (lambda (str) (vl-string-trim  str))) (car csvLines)))

  ;; 获取数据行
  (setq dataLines (cdr csvLines))

  ;; 循环处理每行数据
  (foreach row dataLines
    (setq attribValues (mapcar (function (lambda (str) (vl-string-trim  str))) row))

    ;; 选择图框(属性块参照)
    (setq blockRef (entsel n选择包含属性的图框 ))
    (if (null blockRef)
      (progn
        (princ n未选择图框。)
        (exit)
      )
    )
    (setq blockRef (car blockRef))

    ;; 遍历属性名称,更新属性值
    (setq i 0)
    (foreach header headers
      ;; 查找属性标签
      (setq attribTag header) ; 直接使用属性名称作为标签
      ;; 更新属性值
      (setq attribPair (assoc 2 (entget blockRef)))
      (if attribPair
        (entmod (subst (cons 1 (nth i attribValues)) attribPair (entget blockRef)))
        (princ (strcat n属性  header  未找到。))
      )
      (setq i (1+ i))
    )
    ;; 更新图框
    (entupd blockRef)
  )
  (princ)
)

(princ n输入 CSV 来运行。)

附件: 您需要 登录 才可以下载或查看,没有账号?注册
发表于 2024-4-24 08:38 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
回复

使用道具 举报

发表于 2024-4-24 08:41 | 显示全部楼层
本帖最后由 ssyfeng 于 2024-4-24 08:43 编辑

现在AI写的代码还是不行
不上图和文件,别人很难帮你写的
回复

使用道具 举报

 楼主| 发表于 2024-4-24 09:03 | 显示全部楼层
本帖最后由 --访-- 于 2024-4-24 09:22 编辑

CSV表格数据和dwg样板已经上传
回复

使用道具 举报

 楼主| 发表于 2024-4-24 09:09 | 显示全部楼层
ssyfeng 发表于 2024-4-24 08:41
现在AI写的代码还是不行
不上图和文件,别人很难帮你写的

大佬请帮忙看看,谢谢
回复

使用道具 举报

发表于 2024-4-24 11:48 | 显示全部楼层
csv文件还转成PDF?
可加我QQ
回复

使用道具 举报

 楼主| 发表于 2024-4-24 13:41 | 显示全部楼层
本帖最后由 --访-- 于 2024-4-24 13:48 编辑
ssyfeng 发表于 2024-4-24 11:48
csv文件还转成PDF?
可加我QQ

csv不能上传,已经改压缩文件上传,已加QQ
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-5-4 23:56 , Processed in 0.198328 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表