找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 747|回复: 3

[求助] [求助]:如何将原子转换成字符串

[复制链接]

已领礼包: 1915个

财富等级: 堆金积玉

发表于 2003-6-28 22:25:13 | 显示全部楼层 |阅读模式

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

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

×
用read-line读取一sdf格式文件,如:
z1  234  234
z2  234  564
用(read (read-line f))后得到的z1的类型为原子,而我需要的是字符串,应该怎么办?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 488个

财富等级: 日进斗金

发表于 2003-6-28 22:40:03 | 显示全部楼层
那你为什么一定要read呢?
read-line得到的为"z1 234 234",那你把空格后的去掉不就可以了?
找到空格位置,前面的就是.
vl-string-search,再substr.

最近老有人问这样的问题,先看看别的主题,可能答案就有了.
比如:
http://www.xdcad.net/forum/showthread.php?s=&threadid=66654
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-6-29 18:05:29 | 显示全部楼层
我前几天也在想这个问题,经高手指点后我的方法是
如:(setq a "z1 234 234")
(setq a1 (vl-princ-to-string(read a)))
;a1为"Z1"
(setq x (strcat a1 T));一定加此句,read返回值为大写字母.
(setq b (vl-string-subst "" x a))
(setw a2 (vl-princ-to-string(read b)))
;a2为"234"
直到read所读为nil
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1915个

财富等级: 堆金积玉

 楼主| 发表于 2003-6-30 18:10:33 | 显示全部楼层
我用下述代码试验
(setq aaa '(z1 234 234))
(setq bbb (car aaa))
(setq ccc (vl-princ-to-string bbb))

vl-princ-to-string 可以将原子直接变为字符串
正是我要找的函数

我的代码中 aaa 表代表一个坐标的名称和其坐标,读取数据文件得到
bbb的类型为原子
ccc的类型为字符串

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-26 14:27 , Processed in 0.171849 second(s), 38 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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