注册 登录
明经CAD社区 返回首页

Gu_xl的个人空间 http://www.mjtd.com/?161460 [收藏] [复制] [分享] [RSS]

日志

读取幻灯片库文件中的幻灯片名称列表

热度 8已有 2483 次阅读2015-3-27 21:44 |个人分类:Lisp公用函数|系统分类:开发| 源码, 幻灯片, AutoCAD, Lisp, SLb

slb2sldnames.LSP

slb2sldnames.LSP

本源代码由 Gu_xl 编写发布! 联系方式: Email: Gu_xl@sohu.com
;;(gxl-slb2sldnames SLBFileName) 返回幻灯片库文件中幻灯片名称列表
(defun gxl-slb2sldnames
       (PATH / Names N ID A HEADLIST I LOOP NAME B C D PTR)
  (if (setq id (open path "r"))
    (progn
      (repeat 31
	(if (and (setq a (read-char id))
		 (/= a 0)
	    )
	  (setq headlist (cons a headlist))
	)
      )
      (setq n 31)
      (setq i 0)
      (setq headlist (strcase (VL-LIST->STRING (reverse headlist))))
      (if (VL-STRING-SEARCH "SLIDE" headlist)
	(progn
	  (setq loop t)
	  (while loop
	    (setq name nil)
	    (repeat 32
	      (if (and (setq a (read-char id))
		       (/= a 0)
		  )
		(setq name (cons a name))
	      )
	      (setq n (1+ n))
	    )
	    (if	name
	      (progn
		(setq Names (cons (VL-LIST->STRING (reverse name)) Names))
(if (= i 0) (progn (if (and (setq a (READ-CHAR id)) (setq b (READ-CHAR id)) (setq c (READ-CHAR id)) (setq d (READ-CHAR id)) ) (setq ptr (+ a (lsh b 8) (lsh c 16) (lsh d 24))) ) (setq n (+ n 4)) ) (repeat 4 (READ-CHAR id) (setq n (1+ n)) ) ) (setq i (1+ i)) (if (= (37 n) ptr)
		  (setq loop nil)
		)
	      )
	      (setq loop nil)
	    )
	  )
	)
      )
      (close id)
      (reverse Names)
) ) )

路过

雷人
5

握手
2

鲜花

鸡蛋

刚表态过的朋友 (7 人)

发表评论 评论 (1 个评论)

回复 gamexia 2016-10-31 22:46
G版是我们学习的榜样

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

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

GMT+8, 2024-3-29 16:47 , Processed in 0.095816 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部