Мне было предложено решить следующую проблему: скопируйте файлы в пакет из 3 во вновь созданных папках. Пример: в папке, скажем, «D:/TEST_CF /», есть 20 файлов txt. Разделите их на 3 (пакет - дайте нам 6 оставшихся 2), создайте 7 папок (чтобы поместить партии из 3 в 6 папок и оставшиеся 2 файла в 7-й папке). То, что я делал до сих пор, - это создать необходимые папки. Но я не могу скопировать файлы в партии по 3 во вновь созданных папках. Как мне решить эту проблему?Скопировать файлы в папки с использованием ColdFusion (openBD Engine)
Блочный код
<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>
Что часть вызывающий трудности - копирование файлов или делать в threesies? –
@ Dan Bracuk Часть, которая вызывает у меня проблему, является копией. Я изменил вышеупомянутый процесс, используя cfc. После создания папок все файлы (20) копируются в первую папку. Для cfm следуйте за [http://pastebin.com/ugrjPJ7W] и для cfc follow [http://pastebin.com/yXinvtvr] – anarchos78
У меня нет точного синтаксиса прямо сейчас, но внутри ваших папок для создания цикла можно вы делаете второй цикл, в котором вы копируете файлы с файлом имени файла [1] .filename, file [2] .filename и т. д. Я мог бы отправить пример кода завтра – steve