Вы можете установить статический счетчик копируемых файлов на уровне класса, который увеличивается, когда вы находите другой файл для копирования, и уменьшается, когда функция события сообщает, что копирование завершено.
private static fileCounter:int = 0;
и в цикле:
++fileCounter;
f.addEventListener(Event.COMPLETE, onFilecopied);
f.copyToAsync(locationCopyingTo.resolvePath(f.name), true);
и в обработчике событий:
function onFileCopied(event)
{
if ( --fileCounter == 0 )
trace("finished");
}
Но слаб, потому что вы не можете восстановить после ошибок, а также не знаете, какие файлы были скопированы. Чтобы создать более надежное решение, вы можете хранить в классе не только счетчик файлов, но и список имен файлов:
class FileCopyInfo
{
...
private var fileName:String;
private var finished:Boolean;
}