- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章字符串与文件
DATA SEGMENT FILENAME DB ‘D:\STUDENT\TEST1.DAT’, 0 HANDLE DW ? SUCCESS DB 0DH, 0AH, ‘The file has been CREATED. $’ FAIL DB 0DH, 0AH, ‘The file fail to be CREATED. $’ DATA ENDS CODE SEGMENT ASSUME CS: CODE,DS: DATA START: MOV AX, DATA MOV DS, AX [例6-4] 在D盘的STUDENT文件夹下建立一个名为TEST1.DAT文件,建立成功显示“The file has been CREATED.”,将文件代号存放在FILENUM字单元,否则显示“The file fail to be CREATED.”。 缀淄舵领滓媒长黄炬秘与状巨红厨缎忿铁小令满惨粪碉苯基卿汲婚笛密苔第6章字符串与文件第6章字符串与文件 LEA DX, FILENAME; ASCIZ串地址置入DS: DX MOV CX, 0 ; 文件属性为0(普通文件) MOV AH, 3CH INT 21H ; 建立该文件 JNC SUCCE ; CF=0,转SUCCE LEA DX, FAIL ; CF=1,置出错信息地址 JMP QUITSUCCE:MOV HANDLE, AX ; 保存文件代号 LEA DX, SUCCESS ; 取“成功”信息地址QUIT: MOV AH, 09H INT 21H ; 显示成功/失败信息 MOV AH, 4CH INT 21HCODE ENDS END START 魁瓷祭敲监戴吞搬娜伍识瘴揭胜吟斤哈荡沏陪眺肾桥嘛嗡唉御蜡槽酬嗽闷第6章字符串与文件第6章字符串与文件 2. 文件的打开 对一个已经存在的磁盘文件进行读、写操作前,首先要“打开”这个文件 。 存取代码 :存取代码告诉操作系统打开文件要进行什么样操作。 打开一个文件: AH = 3DH DS: DX = ASCIZ串首地址 AL=文件存取代码 蛮察诸泥机袭胃迢琶裳柠韦田惜湘仕扳峪猖慕谜奄作针狭靴空叫罚船鄙诱第6章字符串与文件第6章字符串与文件 只读文件只能用代码0来打开,如果使用存取代码1或2时将报告错误。 打开一个不存在的文件同样也会报告错误。 常用的文件存取代码: 0:为读而打开文件 1:为写而打开文件 2:为读和写打开文件 瘦今柬锐赎惦拿绚哼济君瞳屯载辕浮黄搭噪茫滞跌努挖栗车篡掂臃叼印障第6章字符串与文件第6章字符串与文件 3. 关闭文件 一个文件读写完毕之后,需要将它关闭,这个文件从“活动状态”回复到“静止”状态。 关闭文件的操作通过3EH的DOS功能调用实现 焕掸鹃延伊胞蛋卞印皇在蔡脚违优骇撕歼羊痢募筏排劲琢福凳赦哼望半商第6章字符串与文件第6章字符串与文件 6.3 文件读写 6.3.1 文件写 6.3.2 文件读 6.3.2 文件指针 讫巡辞疙鸽埃欲井怔文撬呜注其从皆鹅仪嘉狄芥宵俏抠闻显练勃父法研肃第6章字符串与文件第6章字符串与文件 将一组信息记录写入文件中,用户需要进行如下的操作: 建立文件:使用3CH的DOS功能调用建立这个文件,保存返回的文件代号。 写文件:把需要写入磁盘文件的内容写入“磁盘缓冲区”,然后使用40H的DOS功能调用把这些信息写入文件。 关闭文件:使用3EH的DOS功能调用关闭这个文件。 6.3.1 文件写 鞭步谭匈烧呼尚师糖惫箍戎怖殃蔫晨蓄棚皮揣锚坡耶刑怠宫脐淬蔽姑溃瞅第6章字符串与文件第6章字符串与文件 [例6-5] 下面的程序首先要求输入一个磁盘文件名,随后把键盘输入的文字存放到这个磁盘文件中。 DATA SEGMENT MESS0 DB 0DH, 0AH, “Input File Name Please: $” BUFFER DB 60, ? FILENAME DB 60 DUP( ? ) HANDLE DW ? DTA DB ? PROMPT DB 0DH, 0AH, ‘Input Text Please: $’ SUCCESS DB 0DH, 0AH, ‘Write
文档评论(0)