EDA365电子工程师网

标题: 十天学会Skill之第三天 [打印本页]

作者: deargds    时间: 2010-1-29 18:10
标题: 十天学会Skill之第三天
本帖最后由 deargds 于 2010-1-29 18:12 编辑

十天学会Skill之第三天
By deargds
https://www.eda365.com

学习目的:如何操作,读写文件。

一,创建,删除目录等

1.在当前打开的目录下创建test子目录,也可以使用绝对路径。
createDir("./test")
createDir("c:/test")

2.删除目录,也可以使用绝对路径。
deleteDir("./test")
deleteDir("c:/test")

3.检查目录是否存在
isDir("c:/test")

4.检查目录是否可读写
isReadable("c:/test")
isExecutable("c:/test")

5.同样也可以用isReadable,isExecutable来判断文件是否可读写。
c:/test/1.txt 实际不存在,所以以下执行结果返回为nil,所以在读写文件之前我们可以用来作判断。
isReadable("c:/test/1.txt")
isExecutable("c:/test/1.txt")


ps:另外还有isFileName,isFile,isLargeFile,isExecutable等相关函数请参考帮助

二,如何读取文件

1.首先要定义一个文件输入端口类型
c:/test/1.txt文件的实际内容如下:
<----c:/test/1.txt---->
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
Sunday
<----c:/test/1.txt---->

现在我们将每行的内容读出并在ALLEGRO界面中弹出提示。
;首先使用infile定义一个文件输入端口类型weekport,
weekport = infile("c:/test/1.txt")
;现在用gets对weekport进行读取
gets(i,weekport)
;现在文件的第一行就读到变量i中了,下面直接调用AXL函数弹出
axlUIConfirm(i)

[attach]24741[/attach]
;使用while循环读出每一行,直到文件结尾
while( gets(i,weekport)
axlUIConfirm(i);会弹出每一行的内容
)

;在读取结束后,要记得使用close函数关闭端口
close(weekport)


三,如何写入文件

与读取类似,写入文件需要用outfile定义一个写入端口

;写入到"c:/test/1.txt" 中,如果是添加模式的话outfile要用参数"a"
wport = outfile("c:/test/1.txt")
;写入端口
fprintf(wport,"Hello,world!")
;关闭端口
close(wport)

;c:/test/1.txt文件中就已经写入Hello world这行内容了。


以上大概介绍了读写文件的一般流程,大家自己可以对照帮助看一下相关函数的用法,特别是格式化输出函数fprintf。

作者: 叫布什动我啊    时间: 2010-1-29 18:36
沙发先
作者: wg2005    时间: 2010-1-29 21:51
此贴构思巧妙,视角独到,手法新颖。字字斟酌,句句精美,情节曲折,而又始终不离中心思想,引人入胜,淡淡的言语中,显示人生之大道理,充分体现了您深厚的文化底韵与丰富的社会经验,真可谓讽刺之经典,骂人之绝学,这正是我辈苦学闷读追求的至高境界啊!
作者: raphael    时间: 2010-2-1 17:21
感谢分享~
作者: defir    时间: 2010-2-2 11:25
楼主的帖子写的很好
作者: G_R_L    时间: 2010-2-7 17:15
顶。。。。高
ThaNKS
作者: ccjljy    时间: 2010-3-18 14:47
我在allegro中输入set telskill在弹出的skill开发窗口中输入
weekport = infile("F:\allegrofile\pcbenv\skill\1.txt")
gets(i,weekport)
axlUIConfirm(i)
while( gets(i,weekport)
axlUIConfirm(i))
close(weekport)
结果E- *Error* eval: unbound variable - weekport
ERROR这样了,我有在F:\allegrofile\pcbenv\skill\下建一个名为1.txt的文档,
还有那个目录的斜杠是\还是/呢?
我换成/还是没有弹出显示的对话框,
我哪里错了呢?望指教
作者: yujian    时间: 2010-12-20 16:41
谢谢分享!!!!!!!!!!!!!
作者: yujian    时间: 2011-2-6 13:37
努力学习中!!!
作者: szbluefly    时间: 2011-2-16 10:40
回复 ccjljy 的帖子

目录应该用 "/"

作者: zippoland    时间: 2011-2-19 14:38
我也发现同样的问题
ERROR是一样的,请问是什么原因呢?
作者: sun_bing    时间: 2011-2-25 13:51
感谢deargds
作者: buptljq    时间: 2011-3-31 16:48
讲的很通俗易懂啊
作者: 290921341    时间: 2011-4-15 14:35
学习
作者: chouqiu    时间: 2011-12-2 10:22
我只能在群里学习了  CADENCE 里的资料  都是英文 不怎么好学
  希望版主 能尽量 学的 通俗易通
作者: xuyongshuang    时间: 2012-4-13 09:26
一块学习
作者: cxp702    时间: 2012-4-18 14:59
谢谢了饿~~~~~~~












轩辕战记-q群167650819
作者: tysn55j    时间: 2012-4-21 13:26
xiexie!!












海尔空调官网blog.163.com/haier_kt999/
作者: wuyuhe    时间: 2015-9-15 08:52
ccjljy 发表于 2010-3-18 14:47
我在allegro中输入set telskill在弹出的skill开发窗口中输入
weekport = infile("F:\allegrofile\pcbenv\s ...

把第二行和第三行删除,还有那个是用“/”,你再试一下就只可以了。

作者: dengbaba    时间: 2016-3-23 09:45
非常感谢楼主的奉献
作者: dengbaba    时间: 2016-3-23 09:45
谢谢了
作者: craig206    时间: 2016-11-13 11:09
很棒的帖子
作者: mentorkk    时间: 2016-11-14 13:40
很棒的帖子
作者: 黑_白    时间: 2016-11-17 21:27
第四天来了吗?等更。。。
作者: hy20060614    时间: 2016-11-22 18:06
谢谢分享
作者: chdam    时间: 2016-12-7 14:14
谢谢分享!!
作者: wintonlee    时间: 2016-12-21 22:30
继续
作者: Rist    时间: 2017-4-14 16:56
学习学习
作者: kevin_hm    时间: 2017-4-15 12:45
学习学习
作者: bruce777    时间: 2017-5-23 14:59
收下学习了,谢谢楼主  
作者: 夕阳下_g7oc6    时间: 2017-6-16 17:08
:)
作者: yayi    时间: 2017-6-16 17:13
学习。..
作者: yayi    时间: 2017-6-16 17:14
要三级会员?
作者: startlin    时间: 2017-6-18 11:19
漸進學習,謝謝分享
作者: 夕阳下_g7oc6    时间: 2017-6-19 12:49
:):)
作者: 夕阳下_g7oc6    时间: 2017-6-19 12:49
:):)
作者: 夕阳下_g7oc6    时间: 2017-6-19 12:49
:):)




欢迎光临 EDA365电子工程师网 (https://bbs.elecnest.cn/) Powered by Discuz! X3.2