如何提取当前DWG文件的 创建时间 (time)
本帖最后由 xhq1954425 于 2014-3-12 14:31 编辑在CAD中输入time命令后显示 文本窗口,如何将窗口中显示的时间数据提取出来?最好是不显示那个 文本窗口!请知道的朋友指点一下,不胜感激!谢谢! 自己顶一下 不用编程序的方法:
DDEDIT编辑任意文字=>鼠标右键=>插入字段=>选择字段名称=>创建日期
确定之后将显示字段名称。 或者你直接复制 %<\AcVar CreateDate \f "M/d/yyyy h:mm tt">%
在CAD窗口粘贴,现在的问题是,我也不知道怎么直接得到字符串 %<\AcVar CreateDate \f "M/d/yyyy h:mm tt">%
因为里面有单\,与”“,我不知道怎么直接引用 菜卷鱼 发表于 2014-3-17 12:25
不用编程序的方法:
DDEDIT编辑任意文字=>鼠标右键=>插入字段=>选择字段名称=>创建日期
确定之后将显示字 ...
我试了一下这个方法,但显示的时间,就是当前时间,保存文件,复制文件后,得到的时间,又是当前时间。所以,插入字段中的创建时间,是有问题的。只有在TIME命令中的创建时间,才是对的。 本帖最后由 muwind 于 2023-11-7 23:34 编辑
创建时间
显示图形创建的日期和时间。该值存储在 TDCREATE 系统变量中。
修改时间
显示图形上次修改的日期和时间。该值存储在 TDUPDATE 系统变量中。
获取的变量值和date变量的格式一样,需要转换下才能看明白
最近编辑者
显示上一次修改此文件的用户。“最后保存者”的名称存储在 LOGINNAME 系统变量中。
累计编辑时间
显示编辑该图形的总时间。该值存储在 TDINDWG 系统变量中。
muwind 发表于 2023-11-7 23:25
创建时间
显示图形创建的日期和时间。该值存储在 TDCREATE 系统变量中。
怎么转换? 本帖最后由 muwind 于 2023-11-10 21:57 编辑
qazxswk 发表于 2023-11-8 19:26
怎么转换?
以约简儒略日期格式存储当前的日期和时间。
此值表示为“修改的 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" 这吊样的日期
muwind 发表于 2023-11-10 21:37
以约简儒略日期格式存储当前的日期和时间。
此值表示为“修改的 Julian 日期”(MJD),它的格式为 Juli ...
(menucmd "M=$(edtime,$(getvar,TDCREATE),YYYY/MO/DD)")
这个代码收了,谢谢 qazxswk 发表于 2023-11-10 23:47
(menucmd "M=$(edtime,$(getvar,TDCREATE),YYYY/MO/DD)")
这个代码收了,谢谢
格式挺多的 你可以看看edtime的帮助 我就不复制了
页:
[1]