xiatian 发表于 2008-6-19 08:26:00

[求助]读.txt文件时为何老是出现错误??

xiatian 发表于 2008-6-19 08:27:00

<p></p>

xiatian 发表于 2008-6-19 08:31:00

我 先把我的程序跟要上传的.txt文件发上去..可我调用时每次都出现错误: bad argument type<br/>nil*Cancel*,,表ptr为(("c5" 3000 15) ("c3" 3000 15) ("c2" 2000 10) ("c1" 1000 11)),,我觉得应该是(read-line ff)出了问题,最后为nil,所以不匹配,可我又不知道该如何解决,要想读完文件,(read-line ff)必须是空的啊..

north911 发表于 2008-6-19 08:43:00

<p>简单改了一下,应该满足要求了</p><p>(defun c:rt ()<br/>&nbsp; (setq datfile (getfiled "展点原始数据:" "F:\\11" "txt" 2)) ;查找文件路径<br/>&nbsp; (setq ff (open datfile "r"))</p><p>&nbsp; (setq dat T)<br/>&nbsp; (setq dat (read-line ff))<br/>&nbsp; (while dat<br/>&nbsp;&nbsp;&nbsp; (setq data (read (strcat "(" dat ")")))<br/>&nbsp;&nbsp;&nbsp; (setq ptr (cons data ptr))<br/>&nbsp;&nbsp;&nbsp; (setq dat (read-line ff))<br/>&nbsp; )</p><p>&nbsp; (setq b 4)<br/>)<br/></p>

xiatian 发表于 2008-6-19 09:17:00

<strong><font face="Verdana" color="#61b713">多谢north911了,你的着一指点真是帮了我大忙..谢谢了..很好用了</font></strong>

wuxuloveguo 发表于 2008-8-23 11:24:00

不错!不过现在的展点程序比这个还好用啊!

zml84 发表于 2008-8-23 22:51:00

<p><a href="http://zml84.blog.sohu.com/86352409.html">http://zml84.blog.sohu.com/86352409.html</a></p><p></p><p><font face="Fixedsys"><font color="#ff0000">(</font><font color="#0000ff">vl-load-com</font><font color="#ff0000">)</font></font><br/><font face="Fixedsys" color="#990099">;;;==============================================================</font><br/><font face="Fixedsys" color="#990099">;;;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 通用函数&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </font><br/><font face="Fixedsys" color="#990099">;;;功能:读取指定的文本文件,返回文件内容的表&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </font><br/><font face="Fixedsys" color="#990099">;;;参数:FILENAME -----文件名称&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </font><br/><font face="Fixedsys" color="#990099">;;;返回:文件内容组成表。&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </font><br/><font face="Fixedsys" color="#990099">;;;日期:zml84 于 2008-04-25&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </font><br/><font face="Fixedsys" color="#ff0000">(</font><font face="Fixedsys" color="#0000ff">defun</font>
                <font face="Fixedsys">ZML-LX-FILE-TO-LIST</font>
                <font face="Fixedsys" color="#ff0000">(</font><font face="Fixedsys">FILENAME</font>
                <font face="Fixedsys" color="#0000ff">/</font>
                <font face="Fixedsys">F1</font>
                <font face="Fixedsys">STR</font>
                <font face="Fixedsys">LST</font><font face="Fixedsys" color="#ff0000">)</font><br/>&nbsp;&nbsp;&nbsp; <font face="Fixedsys" color="#990099">;;尝试打开文件</font><br/>&nbsp;&nbsp;&nbsp; <font face="Fixedsys" color="#ff0000">(</font><font face="Fixedsys" color="#0000ff">if</font>        <font face="Fixedsys" color="#ff0000">(</font><font face="Fixedsys" color="#0000ff">setq</font>
                <font face="Fixedsys">F1</font>
                <font face="Fixedsys" color="#ff0000">(</font><font face="Fixedsys" color="#0000ff">open</font>
                <font face="Fixedsys">FILENAME</font>
                <font face="Fixedsys" color="#ff00ff">"r"</font><font face="Fixedsys" color="#ff0000">)</font><font face="Fixedsys" color="#ff0000">)</font><br/>        <font face="Fixedsys" color="#ff0000">(</font><font face="Fixedsys" color="#0000ff">progn</font><br/>        &nbsp;&nbsp;&nbsp; <font face="Fixedsys" color="#ff0000">(</font><font face="Fixedsys" color="#0000ff">setq</font>
                <font face="Fixedsys">LST</font>
                <font face="Fixedsys" color="#990000">'</font><font face="Fixedsys" color="#ff0000">(</font><font face="Fixedsys" color="#ff0000">)</font><font face="Fixedsys" color="#ff0000">)</font><br/>        &nbsp;&nbsp;&nbsp; <font face="Fixedsys" color="#990099">;;逐行读取</font><br/>        &nbsp;&nbsp;&nbsp; <font face="Fixedsys" color="#ff0000">(</font><font face="Fixedsys" color="#0000ff">while</font>
                <font face="Fixedsys" color="#ff0000">(</font><font face="Fixedsys" color="#0000ff">setq</font>
                <font face="Fixedsys">STR</font>
                <font face="Fixedsys" color="#ff0000">(</font><font face="Fixedsys" color="#0000ff">read-line</font>
                <font face="Fixedsys">F1</font><font face="Fixedsys" color="#ff0000">)</font><font face="Fixedsys" color="#ff0000">)</font><br/><font face="Fixedsys" color="#990099">;;;                ;;转换为大写</font><br/><font face="Fixedsys" color="#990099">;;;                (setq STR (strcase STR))</font><br/><font face="Fixedsys" color="#990099">;;;                ;;替换</font><br/><font face="Fixedsys" color="#990099">;;;                (setq STR (vl-string-translate "XYZ;" "&nbsp;&nbsp;&nbsp; " STR))</font><br/>                <font face="Fixedsys" color="#990099">;;拆分为表</font><br/>                <font face="Fixedsys" color="#ff0000">(</font><font face="Fixedsys" color="#0000ff">setq</font>
                <font face="Fixedsys">LST</font>
                <font face="Fixedsys" color="#ff0000">(</font><font face="Fixedsys" color="#0000ff">cons</font>
                <font face="Fixedsys" color="#ff0000">(</font><font face="Fixedsys" color="#0000ff">read</font>
                <font face="Fixedsys" color="#ff0000">(</font><font face="Fixedsys" color="#0000ff">strcat</font>
                <font face="Fixedsys" color="#ff00ff">"("</font>
                <font face="Fixedsys">STR</font>
                <font face="Fixedsys" color="#ff00ff">")"</font><font face="Fixedsys" color="#ff0000">)</font><font face="Fixedsys" color="#ff0000">)</font>
                <font face="Fixedsys">LST</font><font face="Fixedsys" color="#ff0000">)</font><font face="Fixedsys" color="#ff0000">)</font><br/>        &nbsp;&nbsp;&nbsp; <font face="Fixedsys" color="#ff0000">)</font><br/>        &nbsp;&nbsp;&nbsp; <font face="Fixedsys" color="#990099">;;关闭文件</font><br/>        &nbsp;&nbsp;&nbsp; <font face="Fixedsys" color="#ff0000">(</font><font face="Fixedsys" color="#0000ff">close</font>
                <font face="Fixedsys">F1</font><font face="Fixedsys" color="#ff0000">)</font><br/>        &nbsp;&nbsp;&nbsp; <font face="Fixedsys" color="#990099">;;返回</font><br/>        &nbsp;&nbsp;&nbsp; <font face="Fixedsys" color="#ff0000">(</font><font face="Fixedsys" color="#0000ff">reverse</font>
                <font face="Fixedsys">LST</font><font face="Fixedsys" color="#ff0000">)</font><br/>        <font face="Fixedsys" color="#ff0000">)</font><br/>&nbsp;&nbsp;&nbsp; <font face="Fixedsys" color="#ff0000">)</font><br/><font face="Fixedsys" color="#ff0000">)</font><br/><font face="Fixedsys" color="#990099">;;;==============================================================</font></p>
页: [1]
查看完整版本: [求助]读.txt文件时为何老是出现错误??