明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2007|回复: 9

[讨论] 如何提取当前DWG文件的 创建时间 (time)

[复制链接]
发表于 2014-3-12 14:27:29 | 显示全部楼层 |阅读模式
本帖最后由 xhq1954425 于 2014-3-12 14:31 编辑

在CAD中输入time命令后显示 文本窗口,如何将窗口中显示的时间数据提取出来?最好是不显示那个 文本窗口!请知道的朋友指点一下,不胜感激!谢谢!
"觉得好,就打赏"
还没有人打赏,支持一下
 楼主| 发表于 2014-3-13 19:17:23 | 显示全部楼层
自己顶一下
发表于 2014-3-17 12:25:34 | 显示全部楼层
不用编程序的方法:
DDEDIT编辑任意文字=>鼠标右键=>插入字段=>选择字段名称=>创建日期
确定之后将显示字段名称。
发表于 2014-3-17 13:52:18 | 显示全部楼层
或者你直接复制         %<\AcVar CreateDate \f "M/d/yyyy h:mm tt">%
在CAD窗口粘贴,现在的问题是,我也不知道怎么直接得到字符串 %<\AcVar CreateDate \f "M/d/yyyy h:mm tt">%
因为里面有单\,与”“,我不知道怎么直接引用
发表于 2023-11-7 16:48:48 | 显示全部楼层
菜卷鱼 发表于 2014-3-17 12:25
不用编程序的方法:
DDEDIT编辑任意文字=>鼠标右键=>插入字段=>选择字段名称=>创建日期
确定之后将显示字 ...

我试了一下这个方法,但显示的时间,就是当前时间,保存文件,复制文件后,得到的时间,又是当前时间。所以,插入字段中的创建时间,是有问题的。只有在TIME命令中的创建时间,才是对的。
发表于 2023-11-7 23:25:40 | 显示全部楼层
本帖最后由 muwind 于 2023-11-7 23:34 编辑

创建时间
显示图形创建的日期和时间。该值存储在 TDCREATE 系统变量中。

修改时间
显示图形上次修改的日期和时间。该值存储在 TDUPDATE 系统变量中。

获取的变量值和date变量的格式一样,需要转换下才能看明白

最近编辑者
显示上一次修改此文件的用户。“最后保存者”的名称存储在 LOGINNAME 系统变量中。

累计编辑时间
显示编辑该图形的总时间。该值存储在 TDINDWG 系统变量中。



发表于 2023-11-8 19:26:07 | 显示全部楼层
muwind 发表于 2023-11-7 23:25
创建时间
显示图形创建的日期和时间。该值存储在 TDCREATE 系统变量中。

怎么转换?
发表于 2023-11-10 21:37:23 | 显示全部楼层
本帖最后由 muwind 于 2023-11-10 21:57 编辑

以约简儒略日期格式存储当前的日期和时间。

此值表示为“修改的 Julian 日期”(MJD),它的格式为 Julian 日期编号加上时间的小数代码:

<Julian 日期编号>.<时间的小数代码>

“修改的 Julian 日期”(通常称为 UT1)是一个全世界的科学性标准,用以指定自公元前 4713 年 1 月 1 日 12:00 a.m. (B.C.E.) 起的天数。按照此系统,1997 年 7 月 4 日 2:29:58 p.m. 表示为 2450634.60387736,而 1998 年 1 月 1 日正午 12:00 则相应地表示为 2450815.50000000。

通过用 DATE 返回的数字相减可计算出日期和时间的差别。要用 DATE 返回的值计算从午夜开始的秒数,可以使用以下 AutoLISP 表达式:

(setq s (getvar "DATE"))
(setq seconds (* 86400.0 (- s (fix s))))
因为计算机的时钟能提供日期和时间,所以仅当系统时钟被设置为 UTC/Zulu(格林尼治标准时间)时,DATE 系统变量才返回真正的 Julian 日期


直接转换稍微麻烦点,可以用百度AI或者chatgpt帮你搞定,我没有现成的代码,
也可以用menucmd简单的转化日期比如
(setq tt(menucmd "M=$(edtime,$(getvar,TDCREATE),YYYY/MO/DD)"))  

tt得到的就是 "2019/09/10" 这吊样的日期

评分

参与人数 1明经币 +1 收起 理由
qazxswk + 1 赞一个!

查看全部评分

发表于 2023-11-10 23:47:12 | 显示全部楼层
muwind 发表于 2023-11-10 21:37
以约简儒略日期格式存储当前的日期和时间。

此值表示为“修改的 Julian 日期”(MJD),它的格式为 Juli ...

(menucmd "M=$(edtime,$(getvar,TDCREATE),YYYY/MO/DD)")
这个代码收了,谢谢
发表于 2023-11-11 22:13:47 | 显示全部楼层
qazxswk 发表于 2023-11-10 23:47
(menucmd "M=$(edtime,$(getvar,TDCREATE),YYYY/MO/DD)")
这个代码收了,谢谢

格式挺多的 你可以看看edtime的帮助 我就不复制了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-17 10:27 , Processed in 0.213580 second(s), 31 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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