高手救命啊,帮忙解决一道难题<br/>题目如下: <br/> 批量搜索程序(8086 汇编) <br/> 在当前目录及当前目录的各级子目录中的所有文本文件(*.txt)中搜索指定字符串。如果所有的文本文件中都找不到指定的字符串,则输出字符串未找到的提示信息。对于可以找到的情况: <br/> a. 能够输出所有包含该字符串的文件的路径及文件名 <br/> b. 能够输出该字符串的在各个文件中每次出现的行列位置 <br/> c. 对于多屏输出能够分屏显示 <br/>我大概思路都有了,主要的问题是不知道如何进入当前目录进行目录的遍历,和如何判断文件是txt文件还是目录文件,或是其他类型的文件。 <br/>求助高手挖,给点提示~~谢谢了~~~我只有21分全拿出来了。。。
-
游途道标
回复于
2008-06-03
-
Win32汇编可以用Win32的API搞定,16位汇编比较难搞,你可以去网上搜索下关于汇编如何读取文件内容的文章。<br />至于记录文件名和所出现的位置你可以这样,建两个字符串链表,一个用来存文件,一个用来存字符位置。<br />存放文件的链表必须包含两个元素,一个是字符串指针,一个是指向该文件对应的字符出现位置的链表,见下图:<br />文件Head -> 文件1 -> 文件2 -> ... -> 文件n<br /> | | | |<br /> 位置1 位置1 位置1 位置1<br /> 位置2 位置2 位置2 位置2<br /> 。。。 。。。 。。。 。。。<br /> 位置n 位置n 位置n 位置n