求助版主:如何把數據寫入記事本?謝謝!
<p> <font color="#4d9eb3">請版主幫忙看看,謝謝了!</font></p><p><font color="#c129e8">此程序中,有時候結果太多了,CAD中的窗口無法一次顯示,現在我想請版主幫忙修改一下:</font></p><p><font color="#c129e8">1.能不能做到讓每一行結果按順序輸出到記事本中?</font></p><p><font color="#c129e8">2.當我改變N1 N2 N3 取值范圍時,重新會出現不同的結果。我想把這組結果再次輸入到記事本中?</font></p><p><font color="#c129e8">3.兩個文件名不能相同,否則會被取代掉。(文件名最好以當天的日期作文件名,那樣才不會混)</font></p><p><font color="#c129e8">非常感謝版主大哥在百忙之中能關照一下小弟,謝謝!</font></p><p> </p> 本帖最后由 作者 于 2009-10-22 19:44:57 编辑自己选择文件名行吗?
(defun c:try()
(setq nm (if (= (type nm) 'STR) nm ""))
(if (setq nm (getfiled "输出文件名 :" nm "txt" 1)) (progn
(setq fp (open nm "w"))
(setq N1 5)
(while (and(>= N1 1)(<= N1 12))
(setq N2 7)
(while (and(>= N2 2)(<= N2 18))
(setq N3 6)
(while (and(>= N3 5)(<= N3 24))
(setq cost (+ N1 N2 N3))
(if (and(>= cost 15)(<= cost 50)(< N1 N2 N3))
(print (list "N1=" N1 "N2=" N2 "N3=" N3) fp));end if
(setq N3 (1+ N3))
);end while N3
(setq N2 (1+ N2))
);end while N2
(setq N1 (1+ N1))
);end while N1
(close fp)
(startapp "notepad" nm)
))
(princ)
)
謝謝版主,可是我把你修改後的程序運行後,"<font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/print.htm" target="_black"><font color="#0000ff">print</font></a>
<font color="#ff0000">(</font><a href="http://www.mjtd.com/object/autolisp/list.htm" target="_black"><font color="#0000ff">list</font></a>
<font color="#ff00ff">"N1="</font> N1 <font color="#ff00ff">"N2="</font> N2 <font color="#ff00ff">"N3="</font> N3))"這些記錄並沒有寫入記事本,並且記事本是空的,我想把 CAD中顯示的結果 全部記錄到記事本中,麻煩版主再幫忙看看吧,謝謝了! 二楼改了,再试试。 謝謝版主熱心幫助!非常感謝!這個問題一直困或了我許久,終於得以解決。 <p>命令行显示不了的可以执行一次:(textscr)</p><p>相当于按下F2 打开CAD命令记录窗口</p> 又學了一招,謝謝版主! <p>是什么东东?</p> 版主,補充一句:按F2,它並不能記錄所有的記錄的。所以此方法還是不行的,比如:我計算出了1000組數,但它只能顯示500組數! <p></p><p>小弟又來求助各位大俠了:</p><p>程序運行一切都正常,只是我想一下子知道輸出的結果的總數,比如程序中輸出</p><p>了很多種(lisp N1 N2 N3),同時我把一共有多少種 寫入記事本。結 果也寫出來了,但實際上是一組錯誤的數,比喻明明是50種,它卻只顯示1種或2種、、、、</p><p>誰能指點我一下,看看這到底是為什麼呢?到底哪裡錯了?</p><p>謝謝大家</p>
页:
[1]
2