我正在一个 Java EE (JSF) 项目中工作,该项目源自一个较旧的项目。这样的旧项目是使用 ISO-8859-1 开发的,用于对所有内容进行编码。我想在新项目中使用 UTF-8,但问题是,如果我只是将 eclipse 设置为使用 UTF-8 而不是 Cp1252,那么旧的源文件就会“mojibaked”。你知道我该如何解决这个问题并在任何地方使用 UTF-8 吗?
非常感谢!再见
我正在一个 Java EE (JSF) 项目中工作,该项目源自一个较旧的项目。这样的旧项目是使用 ISO-8859-1 开发的,用于对所有内容进行编码。我想在新项目中使用 UTF-8,但问题是,如果我只是将 eclipse 设置为使用 UTF-8 而不是 Cp1252,那么旧的源文件就会“mojibaked”。你知道我该如何解决这个问题并在任何地方使用 UTF-8 吗?
非常感谢!再见
用于iconv
转换所有文件、提交然后更改 Eclipse 项目设置。
我 为此目的使用iconv
// Convert *.java files from ISO-8859-1 to UTF-8 file encoding in a folder and all subfolders
for x in `find . -name '*.java'` ; do iconv -f ISO-8859-2 -t UTF-8 $x > "$x.utf8"; rm $x; mv "$x.utf8" $x; done
仅转换非 UTF-8 文件的示例:
for f in $(find . -name " . ") do filename="${f%.*}" echo -n "$f" #file -i $f if file -i $f | grep -wq "iso-8859-1" 然后 mkdir -p 转换 cp $f ./converted iconv -f ISO-8859-1 -t UTF-8 $f > "${filename}_utf8" mv "${filename} _utf8" $f echo ": 转换为 UTF-8。" 否则回显“:UTF-8 已经。” 完成