我被要求解决以下问题:在新创建的文件夹中分批复制 3 个文件。示例:在文件夹中假设“D:/TEST_CF/”有 20 个 txt 文件。将它们除以 3(批次给我们 6 余数 2),创建 7 个文件夹(以便将 3 的批次放在 6 个文件夹中,其余 2 个文件放在第 7 个文件夹中)。到目前为止,我所做的是创建所需的文件夹。但是,我无法将文件复制到新创建的文件夹中的 3 批中。我应该如何解决上述问题?
代码块
<html>
<body>
<cfprocessingdirective pageencoding="UTF-8">
<cfset directory = "D:/TEST_CF/">
<cfdirectory directory="#directory#" name="files" action="list" type="file">
<cfset filecount = #files.RecordCount#>
<cfset divisor = 3>
<cfset division = #filecount# / #divisor#>
<cfset remainder = #filecount# MOD #divisor#>
<cfset folders_to_create = Ceiling(#division#)>
<cfoutput>
<cfif directoryExists(directory)>
<cfdirectory action="list" directory="#directory#" name="directories" recurse="true" type="dir" />
<cfloop query="directories">
<cfdirectory action="delete" directory="#directory#/#directories.name#" recurse="yes">
</cfloop>
</cfif>
<cfloop from="1" to="#folders_to_create#" index="i">
<cfdirectory
action="create"
directory="#directory#newfolder#i#">
</cfloop>
<cfif folders_to_create EQ 1>
#folders_to_create# folder created
<cfelse>
#folders_to_create# folders created
</cfif>
</cfoutput>
</body>
</html>