找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 678|回复: 10

[求助]:文件名中带[ ]的无法改名,教如何解决。

[复制链接]
发表于 2005-11-15 21:28:17 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
文件名中带[ ]的无法改名,教如何解决。详见附件。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2005-11-15 23:28:33 | 显示全部楼层
[php](command"rename""b" "[SBD] 十八人会议桌""十八人会议桌")[/php]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-11-16 09:01:19 | 显示全部楼层
谢谢,试验过可行的,其实图块名中有“[ ”才会出现不可以改名的情况,能否帮忙编程,把图中带“[”号的图块名称中的" [ "都去掉。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-11-16 11:10:27 | 显示全部楼层
最初由 海豚 发布
[B]谢谢,试验过可行的,其实图块名中有“[ ”才会出现不可以改名的情况,能否帮忙编程,把图中带“[”号的图块名称中的" [ "都去掉。 [/B]

怎么还说“不可以改名”?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-11-16 21:17:03 | 显示全部楼层
不好意思,说得不清楚,我的意思是按你的方式可以把名字改过来,如果图中有几百个带 “ [ ”的图块,改起来有一定的难度,能否帮忙写个程序,把所以图块名字中带“ [ ”的自动改名,把“ [ ”去掉,以方便选择或编辑。谢谢。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-11-16 21:32:45 | 显示全部楼层
最初由 海豚 发布
[B]不好意思,说得不清楚,我的意思是按你的方式可以把名字改过来,如果图中有几百个带 “ [ ”的图块,改起来有一定的难度,能否帮忙写个程序,把所以图块名字中带“ [ ”的自动改名,把“ [ ”去掉,以方便选择或编辑... [/B]

仍然没有说清楚!如果有几百个带“{”或“A”的图块好处理吗?
  1. [FONT=courier new](defun c:test ()
  2.   (setq        ss (ssget '((0 . "INSERT")))
  3.         i  -1
  4.   )
  5.   (while (setq s1 (ssname ss (setq i (1+ i))))
  6.     (setq nm (cdr (assoc 2 (entget s1)))
  7.           sb (substr nm 1 1)
  8.     )
  9.     (if        (= (substr nm 1 1) "[")
  10.       (command "rename" "b" nm (substr nm 2))
  11.     )
  12.   )
  13. )[/FONT]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-11-17 08:09:32 | 显示全部楼层

  1. (vlax-for OBJ (vla-get-blocks
  2.                 (vla-get-activedocument (vlax-get-acad-object))
  3.               )
  4.   (if (wcmatch (setq NAME (vla-get-name OBJ)) "`[*")
  5.     (vla-put-name OBJ (substr NAME 2))
  6.   )
  7. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-11-17 13:45:41 | 显示全部楼层
我想请教LUCAS版主的程序如何运行。
xyp1964 版主的程序可以使用,但“ [ ”在中间的情况就没有作用了。不过还是谢谢版主,看是否还能改进。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-11-17 16:36:45 | 显示全部楼层

  1. ;;By LUCAS
  2. (defun C:TTTT (/ NAME NAME1)
  3.   (vl-load-com)
  4.   (vlax-for OBJ        (vla-get-blocks
  5.                   (vla-get-activedocument (vlax-get-acad-object))
  6.                 )
  7.     (if        (wcmatch (setq NAME (vla-get-name OBJ)) "*`[*")
  8.       (progn
  9.         (setq N        1
  10.               NAME1 ""
  11.         )
  12.         (repeat        (strlen NAME)
  13.           (if (not (equal "[" (setq WORD (substr NAME N 1))))
  14.             (setq NAME1 (strcat NAME1 WORD))
  15.           )
  16.           (setq N (1+ N))
  17.         )
  18.         (vla-put-name OBJ NAME1)
  19.       )
  20.     )
  21.   )
  22.   (princ)
  23. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-11-19 16:33:20 | 显示全部楼层
谢谢LUCAS版主,程序不错,无论“ [ ”的位置及数量多少,都能解决,完全满足我们的要求。十分感谢。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2005-11-19 18:59:55 | 显示全部楼层
最初由 海豚 发布
[B]我想请教LUCAS版主的程序如何运行。
xyp1964 版主的程序可以使用,但“ [ ”在中间的情况就没有作用了。不过还是谢谢版主,看是否还能改进。 [/B]
  1. [FONT=courier new];;;删除块名中的“[”和“]”
  2. (defun c:test ()
  3.   (setq        ss (ssget '((0 . "INSERT")(2 . "*[*,*]*")))
  4.         i  -1
  5.   )
  6.   (while (setq s1 (ssname ss (setq i (1+ i))))
  7.     (setq bname-old (cdr (assoc 2 (entget s1)))
  8.           bname-new (bname-test bname-old)
  9.     )
  10.     (if        (/= bname-old bname-new)
  11.       (command "rename" "b" bname-old bname-new)
  12.     )
  13.   )
  14. )
  15. (defun bname-test (str)
  16.   (while (/= (vl-string-subst "" "[" str) str)
  17.     (setq str (vl-string-subst "" "[" str))
  18.   )
  19.   (while (/= (vl-string-subst "" "]" str) str)
  20.     (setq str (vl-string-subst "" "]" str))
  21.   )
  22.   str
  23. )[/FONT]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-15 12:31 , Processed in 0.256135 second(s), 52 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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