Sorry if I misunderstood what you were asking earlier.
1. I have read the documentation for join, and as far as I can tell, I'm doing it properly. I have tried changing the double quotes to single quotes but that actually made printed \t instead of the tabs themselves
2. The printflush method comes from http://perldoc.perl.org/IO/Handle.html, which states that "$io->printflush ( ARGS ) Turns on autoflush, print ARGS and then restores the autoflush status of the IO::Handle object. Returns the return value from print."
However, this doesn't make any difference to my output from when I just use print:
my $printing = join("\t",@arrayToPrint); $normal_fh->print("$printing\n");
Thanks for your help, I will update with any progress.