This supersedes version 4.1.0 and should appear on your local CRAN mirror in due course, if not there already.
WriteXLS, first released in 2009, is a cross-platform, Perl-based R function to create Excel 2003 (XLS) and Excel 2007 (XLSX) files from one or more data frames.
The primary change in this major new version is improved support for Unicode/UTF-8 variable width character sets, especially on Windows. This is accomplished via the use of writeLines(..., useBytes = TRUE), rather than write.table(), to create intermediate CSV files from the source R data frames. These exported CSV files are then parsed by Perl scripts to create the resultant Excel file.
The prior use of write.table() to create the CSV files could result in the re-encoding of the content of the CSV files into the locale of the computer upon which the code is running. This could result in the loss of the source character encoding used in the originating R data frames, where variable width character sets are in use. This was primarily an issue on Windows, given the limitations of Unicode/UTF-8 support on that OS.
I want to thank Hamid Moshen for first raising this issue in late March, providing test datasets in multiple Unicode/UTF-8 character sets that I could use to reproduce and correct the issues, and his testing of the changes required.