Y yqplc Unregistered / Unconfirmed GUEST, unregistred user! 2007-01-31 #1 小弟机器与内网相连,别人有时会给我传个文本文件,但我不知道何时会发给我,我又不想不停地打开文件夹'd:/send/'去看别人有没有发给我,请教大虾们,如何在他发给我时自动打开这个文本?
N nicai_wgl Unregistered / Unconfirmed GUEST, unregistred user! 2007-01-31 #2 用个定时器定时查询, if FindFirst(TmpPath, faAnyFile, TmpSearchRec) = 0 then begin repeat if ExtractFileExt(TmpSearchRec.Name) = 'txt'then begin .... end; until FindNext(TmpSearchRec) <> 0; FindClose(TmpSearchRec);
用个定时器定时查询, if FindFirst(TmpPath, faAnyFile, TmpSearchRec) = 0 then begin repeat if ExtractFileExt(TmpSearchRec.Name) = 'txt'then begin .... end; until FindNext(TmpSearchRec) <> 0; FindClose(TmpSearchRec);
T TYZhang Unregistered / Unconfirmed GUEST, unregistred user! 2007-01-31 #3 使用文件夹变化监控TShellChangeNotifier控件,在samples页上。
C ChrisMao Unregistered / Unconfirmed GUEST, unregistred user! 2007-01-31 #4 TmpPath := 你要监视的目录名 + '*.txt'; try if FindFirst(TmpPath, faAnyFile, TmpSearchRec) = 0 then ShowMessage('发现TXT文件'); finally FindClose(TmpSearchRec); end;
TmpPath := 你要监视的目录名 + '*.txt'; try if FindFirst(TmpPath, faAnyFile, TmpSearchRec) = 0 then ShowMessage('发现TXT文件'); finally FindClose(TmpSearchRec); end;
M moolleychean Unregistered / Unconfirmed GUEST, unregistred user! 2007-01-31 #6 如果只判断'd:/send/'中有没有新增的文件,用上上两位的方法再加上一点对已有文件列表的保存就可以了。 关键正如 暗夜中独舞 所说的,要判断是文本文件的话,不只是TXT后缀的才肯定是文本文件,是TXT后缀的也不一定是文本文件。 而且,你怎么判定一个50%ASCII字符50%非ASCII字符的文件是一个文本文件呢? 假定,你定义>50%ASCII字符的文件是文本文件,那么可以有这样的方法: 定时搜索目录 如果有新增文件,Load文件 查询文件的每一个字节,判断<=$F0的字节数是不是>50% 如果是文本文件,调用记事本打开
如果只判断'd:/send/'中有没有新增的文件,用上上两位的方法再加上一点对已有文件列表的保存就可以了。 关键正如 暗夜中独舞 所说的,要判断是文本文件的话,不只是TXT后缀的才肯定是文本文件,是TXT后缀的也不一定是文本文件。 而且,你怎么判定一个50%ASCII字符50%非ASCII字符的文件是一个文本文件呢? 假定,你定义>50%ASCII字符的文件是文本文件,那么可以有这样的方法: 定时搜索目录 如果有新增文件,Load文件 查询文件的每一个字节,判断<=$F0的字节数是不是>50% 如果是文本文件,调用记事本打开