如何将ISO8859-15转换为UTF8?

我有一个ISO8859-15编码的阿拉伯文件。 我怎样才能把它转换成UTF8?
我用iconv但它不适合我。

 iconv -f ISO-8859-15 -t UTF-8 Myfile.txt 

我想附上文件,但我不知道如何。

Solutions Collecting From Web of "如何将ISO8859-15转换为UTF8?"

难道你的文件不是ISO-8859-15编码? 你应该可以用file命令来检查:

 文件YourFile.txt 

此外,您可以使用iconv而不提供原始文件的编码:

  iconv -t UTF-8 YourFile.txt 

我发现这为我工作:

 iconv -f ISO-8859-14 Agreement.txt -t UTF-8 -o agreement.txt 

我有Ubuntu 14和其他答案在哪里没有为我工作

 iconv -f ISO-8859-1 -t UTF-8 in.tex > out.tex 

我在这里找到了这个命令

在我的情况下, file命令告诉错误的编码,所以我试着转换所有可能的编码,并找出正确的。

执行这个脚本并检查结果文件。

 for i in `iconv -l` do echo $i iconv -f $i -t UTF-8 yourfile | grep "hint to tell converted success or not" done &>/tmp/converted 

您可以使用ISO-8859-9编码:

 iconv -f ISO-8859-9 Agreement.txt -t UTF-8 -o agreement.txt 

Iconv只是将转换后的文本写入标准输出。 您必须使用-o OUTPUTFILE.txt作为参数或将stdout写入文件。 ( iconv -fx -tz filename.txt > OUTPUTFILE.txt iconv -fx -tz < filename.txt > OUTPUTFILE.txt某些iconv版本中的iconv -fx -tz < filename.txt > OUTPUTFILE.txt

 Synopsis iconv -f encoding -t encoding inputfile Description The iconv program converts the encoding of characters in inputfile from one coded character set to another. **The result is written to standard output unless otherwise specified by the --output option.** --from-code, -f encoding Convert characters from encoding --to-code, -t encoding Convert characters to encoding --list List known coded character sets --output, -o file Specify output file (instead of stdout) --verbose Print progress information.