明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1858|回复: 7

再请教一个问题,关于文件路径!!

[复制链接]
发表于 2003-7-15 11:27:00 | 显示全部楼层 |阅读模式
如何在CAD得到自己创建的一个文件的路径??


任何目录先都希望能达到这个效果。
发表于 2003-7-15 12:00:00 | 显示全部楼层
(setq fname (findfile filename))
再调用如下的函数,——摘于本站实用函数
(defun JustPath(cFileName / bsLoc)
(setq bsLoc (rat "\\" cfileName))
(if(> bsLoc 0)
(substr cFilename 1 (1- bsLoc))
""
) ;_ end of if
) ;_ end of defun

注:函数中所引用未知函数,可在本站实用函数中查到
发表于 2003-7-15 17:16:00 | 显示全部楼层

你想以什么方式得到文件路径?想达到什么效果?
 楼主| 发表于 2003-7-16 12:45:00 | 显示全部楼层
我想用编程创建一个文件,

然后得到这个文件的路径
 楼主| 发表于 2003-7-17 09:30:00 | 显示全部楼层
斑竹的函数我看不懂,能不能讲解一下
发表于 2003-7-17 10:29:00 | 显示全部楼层
使用findfile后,可得出创建的文件的全路径(包括文件名)了,在用函数将后面的文件名删掉,即得出路径了
发表于 2003-7-17 16:00:00 | 显示全部楼层

回复

你是用lisp程序创建文件吗?还是用其它程序创建?
如果不能定位该文件位置,只有findfile函数搜索该文件,得到文件路径了
下面的函数是否对你有用?
函数fnsplitl:
  (fnsplitl "C:\\Program Files\\ACAD2000\\111.dwg")返回
  ("C:\\Program Files\\ACAD2000\\" "111" ".dwg")
函数
  ;;
  ;;  Find dwg name from path name.
  ;;
  (defun parse_path( / a b c)
    (setq a 1)
    (while ( <= a (strlen path_name))
      (if (is_lead_byte(ascii (substr path_name a 1)))
        (progn
          (setq a (1+ a))
        )
        (progn
          (if (member (substr path_name a 1) '("/" "\\" ":"))
            (setq b a)
          )
          (if (member (substr path_name a 1) '("."))
            (setq c a)
          )
        )
      )
      (setq a (1+ a))
    )
    ;; Remove path
    (if b
      (setq blk_name (strcase (substr path_name (1+ b))))
      (setq blk_name (strcase path_name))
    )
    ;; Remove extension (the last period and the letters following it).
    (if (and c blk_name path_name)
      (progn
        ;; calculate c with respect to the blk_name rather than path_name.
        (setq c (- c (- (strlen path_name) (strlen blk_name))))
        (setq blk_name (strcase (substr blk_name 1 (- c 1))))
      )
    )
  );_defun

调用(parse_path "C:\\Program Files\\ACAD2000\\111.dwg")返回
        "111"
 楼主| 发表于 2003-7-18 08:46:00 | 显示全部楼层
谢谢老王,我好好试一下你的程序再看看
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-26 18:22 , Processed in 0.184434 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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