我有一个要求,即
If file exists and is not readable then Update in DB with
file path and some Status.
文件是否存在且无法读取?
是,如何通过coldfusion
此类文件识别,
我知道我们可以确定它是否存在,但我想知道,如何识别它是否可读?
我正在使用Windows服务器和Coldfusion 8
谢谢,
答案 0 :(得分:4)
通过使用GetFileInfo(path),您可以获取文件的大小以及是否启用了读写权限。它也将返回'type',但它只是'file'vs'folder',而不是mime-type。
示例:
<cfset test = GetFileInfo(myFilePath)>
<cfdump var="#test#">
使用示例:
<!--- Check if file exists and is not readable --->
<cfif fileExists(myFilePath) AND NOT GetFileInfo(myFilePath).canRead>
<!--- then Update in DB with file path and some Status --->
</cfif>
如果您的要求假定您正在验证文件类型而不仅仅是打开文件的能力,那么您需要更新您的问题以列出您必须测试的文件类型,以便我们可以帮助您那部分。 Coldfusion可以验证某些类型,其他类型可能需要一些Java。
答案 1 :(得分:3)
文件可能存在,但您没有正确的权限来阅读它。
我找到this:
GetFileInfo(filepath) - 到目前为止,直到ColdFusion 7,没有找到关于文件的大小,上次修改日期等信息的好方法。只有这样才能使用cfdirectory标记列出目录,从中获取查询,循环查询,直到找到所需文件,然后获取所需的元数据。 ColdFusion 8中的新函数GetFileInfo提供了一种获取有关文件或目录的所有元数据的简便方法。这将返回一个结构,如下所述。
答案 2 :(得分:1)
这可能意味着文件被打开以进行写入,或者当前用户没有读取权限。