unfortunately there was no GUI program mentioned
You didn't mention the necessity of a GUI.
Is there a program that is capable of converting for example ISO-8859-1 to UTF-8?
iconv!
Oh, well. Here's an example of a lame GUI for iconv.
It depends on default shell, iconv and a package called "zenity" which supercedes Xdialog.
Save as "iconv_gui" somewhere in your path (say /usr/local/bin), chown as necessary, chmod 0750, and run.
Files (copy) are saved to dir "TMP/iconv_out".
YMMV(VM).
Code:
#!/bin/sh
# iconv_gui for www.linuxquestions.org 20060319
if [ -z "${TMP}" -o ! -d "${TMP}" -o ! -w "${TMP}" ]; then exit 127; fi
if [ -d "${TMP}" -a ! -d "${TMP}/iconv_out" ]; then mkdir "${TMP}/iconv_out"; fi
convList=($(iconv --list | tr -d ",\/\/"|egrep -v "(^(The.f|not.n|the.F|listed.w)|[[:blank:]])"))
if [ -x "${#convList[@]}" ]; then exit 1; fi
convFrom=$(zenity --width=400 --title="Iconv-GUI: select \"From\" charset:" --list --column=" ${convList[@]}" --separator=" " 2>/dev/null)
if [ -x "${convFrom}" ]; then exit 1; fi
convTo=$(zenity --width=400 --title="Iconv-GUI: select \"to\" charset:" --list --column=" ${convList[@]}" --separator=" " 2>/dev/null)
if [ -x "${convTo}" ]; then exit 1; fi
zenity --width=600 --title="Iconv-GUI: select files:" --file-selection --multiple --separator="\n" | while read l; do
if [ -f "${l}" ]; then convOut="${TMP}/iconv_out/$(basename "${l}")"; if [ ! -f "${convOut}" ]; then
iconv -f ${convFrom} -t ${convTo} "${l}" > "${convOut}"; fi; fi; done; exit 0