pascal 文件夹

来源:百度知道 编辑:UC知道 时间:2024/06/25 23:01:21
问题是这样的,想让指针指到某个文件夹下,pascal中如何实现呢?
比如说:a文件夹下有100个文件,我想这样,先让指针指向第一个文件1,然后处理(处理程序不需要),然后在指向第二个文件2,处理,循环100次,处理所有文件,请详细说明,因为我是新手,谢谢大侠们。自己不确定的请别回复谢谢
一楼的大侠,不太好意思,我没看懂。。。新手,还麻烦你说明白点。或者你这样给我说下,1.怎么指向某个文件夹,具体定义。2,findfirst函数具体参数应该怎么写,说通俗点谢谢,以及findnext,具体怎么填写参数。你给的程序中findfirst(s + '*.*', 1, r),能解释下里面的三个参数都是什么意思么?谢谢了

首先在程序声明部分最前面加上
uses sysutils;

然后用如下代码实现访问目录下的文件:

uses
sysutils;
var
r: tsearchrec;
s: ansistring;

begin

writeln('Input Dir:');

readln(s);

if s[length(s)] <> '\' then s := s + '\';

if findfirst(s + '*.*', faAnyfile, r) = 0 then
repeat
if not fileexists(s + r.name) then break;

writeln(r.name);
//对r.name进行操作

until findnext(r) <> 0 else
begin
writeln('<Empty>');

//目录下没有文件

end;

findclose(r);
end.

========================================
findfirst(s, p, r)

s是路径+限制条件
比如说 "d:\*.txt"

p是查找的目标类型编号
p的值 对应的目标
faReadOnly 只读文件
faHidden 隐藏文件
faSysFile 系统文件
faVolumeID Volume ID 文件
faDirectory 路径文件