明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: 精灵王

[求助]如何将数据文件打包的文件中

  [复制链接]
 楼主| 发表于 2004-6-18 14:29:00 | 显示全部楼层
本帖最后由 作者 于 2004-6-18 15:10:38 编辑

wmz发表于2004-6-18 14:11:00闹了半天!你把(setq file \"Xpc.txt\")去掉就行了! 试想,你先用findfile函数查找到了带盘符路径\"xpc.txt\",这时,变量file的值就是 \"X:\\< 路径>...

你看了我红字的返回值了,因为返回值为nil,因此我又重新设置了(setq file "Xpc.txt"),因为不知道编译打包在vlx中的Xpc.txt,他的路径是什么? 谢谢各位了,还请多指教。
发表于 2004-6-18 19:56:00 | 显示全部楼层
我还想多一句嘴:用findfile函数查找文件时,一定要保证该(已经存在的)文件位于ACAD可搜索的文件夹,如ACAD的安装目录的support等等,或者在"支持文件搜索路径"下添加访问文件夹,不然,(setq file (findfile "xpc.txt"))中的file将返回nil.
 楼主| 发表于 2004-6-18 21:26:00 | 显示全部楼层
这个我也知道,我现在的目的就是,将数据文件编译到vlx中,可以直接打开,现在不知怎样才能打开打包在vlx中的txt文件,可以实现正常的读操作。


各位,再帮一下忙,我先谢谢了。
发表于 2004-6-18 22:21:00 | 显示全部楼层
据我知道,数据文件的文件名是可以编译到VLX里面去的,而数据文件里的数据除了在程序里面直接赋值外,我没有听说将文件的名称一编译到程序里数据就进去了,只能通过外存储器(如磁盘光盘......等等)与计算机I/O进行读写交换才能达到目的,我不知道你是不是这个意思?
发表于 2004-6-19 12:08:00 | 显示全部楼层
AutoLISP 参考


vl-get-resource


返回 VLX 中保存的 .txt 文件中的文字
(vl-get-resource text-file)

参数

text-file

字符串,指定 VLX 中的 .txt 文件。在指定文件名时,不要包含 .txt 扩展名。

返回值

字符串,其中包含 text-file 中的文字。

样例

假设 getres.vlx 文件中包含的 LISP 程序定义了一个名为 print-readme 的函数和名为 readme.txt 的文本文件。
print-readme 函数的定义如下:

(defun print-readme ()
(princ (vl-get-resource "readme"))
(princ)

)

加载 getres.vlx 后调用 print-readme:

_$ (print-readme)
There is very important information here!
Be sure to thoroughly read the following!
Are you ready?

Here it comes...
发表于 2004-6-19 12:39:00 | 显示全部楼层
原来一个批量打印程序显示HELP的一段代码: 例程: 下面这段代码首先查找打包在vlx中的txt文件BP_HELP_HTM.txt 如果失败,在支持路径中查找BP_Help.htm (if (setq str (vl-get-resource "BP_HELP_HTM"))
(progn (setq filename (vl-filename-mktemp "BatchPlot.htm"))
(setq fd (open filename "w"))
(princ str fd)
(close fd)
)
(setq filename (findfile "BP_HELP.htm"))
)
 楼主| 发表于 2004-6-19 14:12:00 | 显示全部楼层
我试过vl-get-resource text-file,他是将txt文件中的所有内容都读出来了,我需要的是一行一行,先读出,再比较,通过就结束文件,不行再读下一行,这个函数达不到这个功效。
 楼主| 发表于 2004-6-19 14:27:00 | 显示全部楼层
wmz发表于2004-6-18 22:21:00据我知道,数据文件的文件名是可以编译到VLX里面去的,而数据文件里的数据除了在程序里面直接赋值外,我没有听说将文件的名称一编译到程序里数据就进去了,只能通过外...

你用文本程序打开vlx文件,就可以知道,他对资源文件没有进行编译,只是附加在文件里面而已,之所以打包在里面,就可以只提供一个应用程序vlx文件,不用单独再提供数据文件,而且需要设置搜索路径,这样我有一个程序给别人应用,还有帮别人设置环境,因此想用vlx,将数据文件包含在里面,一个文件就解决问题,现在就是打开文件出错,没法进行。打包在文件中还有一个好处,就是避免误操作将数据文件给修改,这样程序就处错了.
发表于 2004-6-19 14:55:00 | 显示全部楼层
精灵王发表于2004-6-19 14:12:00我试过vl-get-resource text-file,他是将txt文件中的所有内容都读出来了,我需要的是一行一行,先读出,再比较,通过就结束文件,不行再读下一行,这个函数达不...

都读出来了,要取其中一行,还不简单?
发表于 2004-6-19 20:44:00 | 显示全部楼层
能不能把这个问题和下一个问题合并讨论,我有点乱,不知道该进那一个?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-17 15:27 , Processed in 0.188717 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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