Convert UCS-2 encoded text with 16-bit characters into 8-bit characters of the current Ansi codepage of your Windows system, on the command line with the free Open Source tool Swiss File Knife.
sfk wtoa in.txtsfk iwtoa
convert UCS-2 encoded text with 16-bit characters
into 8-bit characters of the current Ansi codepage
of your Windows system.
options
-nostop if some chars cannot be converted
then do not stop, show no warning,
set return code 1 instead of 9.
-tofile x write output to file x
-codes print character codes
-be big endian input
-le little endian input
-codepage=n change codepage. for details
type: sfk listcodes
-showfail tell which unicode characters
failed to convert
command chaining support
iwtoa accepts binary input from
previous commands like xed.
aliasessfk ucstoansi same as wtoa
sfk iucstoansi same as iwtoa
return code
0 = ok, all characters converted.
if conversion is incomplete:
default: rc 9, chaining stops.
-nostop: rc 1.
see alsosfk sysinfo tell active codepages
sfk atow Ansi to wide chars
sfk wtou convert to UTF-8
sfk utow UTF-8 to wide chars
examplessfk wtoa in.txt
if in.txt contains wide character data
print this as Ansi text to terminal.
because characters must be converted to
a DOS codepage for terminal output
it is not sure that every accent or umlaut
character is printed as expected.
sfk wtoa in.txt -tofile out.txt
write output to out.txt, keeping the Ansi
encoding as is. text can then be viewed
and edited by a text editor like Notepad++.
sfk load in.txt +iwtoa +filter -+foo
get all lines containing "foo".