I know there's a script to convert files to UTF-8 but I need a script to convert UTF-8 to UTF-16. Can anyone please assist me on this?
Thank you,
Max
Thank you,
Max
Code: Select all
if (UltraEdit.activeDocument.encoding != 1200) // Is the active file not UTF-16 LE encoded?
{ // That works for ANSI and UTF-8 encoded files
UltraEdit.activeDocument.ASCIIToUnicode(); // despite the string ASCII in function name.
}
// It does not work for UTF-16 BE encoded Unicode files (encoding number 1201). The
// function ASCIIToUnicode() does not make any change in this case on active file.
Code: Select all
// Include the function GetListOfFiles() here without the code demonstrating the usage.
// Replace the initial directory path in the function parameter list with
// real path of the directory containing the files to modify by the script.
if (GetListOfFiles(0,"C:\\Directory\\Path\\","*.*",true))
{
// If there was no error and files are found in the directory, the
// function made the search results output with the file names active.
// Select all lines in the file and load the file names into an array.
UltraEdit.activeDocument.selectAll();
var sLineTerm = "\r\n"; // Default line terminator type is DOS.
var nLineTermPos = UltraEdit.activeDocument.selection.search(/\r\n|\n|\r/);
if (nLineTermPos >= 0) // Any line terminator found?
{
// The list file is a Unix file if first character found is a line-feed.
if (UltraEdit.activeDocument.selection[nLineTermPos] == '\n') sLineTerm = "\n";
// The list file is a Mac file if first character found is a carriage
// return and the next character is not a line-feed as in a DOS file.
else if (UltraEdit.activeDocument.selection[nLineTermPos+1] != '\n') sLineTerm = "\r";
}
var asFileNames = UltraEdit.activeDocument.selection.split(sLineTerm);
// The list is not needed anymore and therefore the results window is closed.
UltraEdit.closeFile(UltraEdit.activeDocument.path,2);
asFileNames.pop(); // Remove empty string at end of the list.
// Now open one file after the other, process it, save and close the file.
// No file in the list should be opened already on script start! Why?
// http://forums.ultraedit.com/viewtopic.php?f=52&t=4596#p26710
// contains the answer on point 7 and the solution to enhance
// this script further if this is necessary in some cases.
for (var nFileIndex = 0; nFileIndex < asFileNames.length; nFileIndex++)
{
UltraEdit.open(asFileNames[nFileIndex]);
if (UltraEdit.activeDocument.encoding != 1200) // Is the active file not UTF-16 LE encoded?
{ // That works for ANSI and UTF-8 encoded files
UltraEdit.activeDocument.ASCIIToUnicode(); // despite the string ASCII in function name.
// It does not work for UTF-16 BE encoded Unicode files (encoding number 1201). The
// function ASCIIToUnicode() does not make any change in this case on active file.
UltraEdit.closeFile(UltraEdit.activeDocument.path,1);
}
else UltraEdit.closeFile(UltraEdit.activeDocument.path,2);
}
}