Javaを使用して文字列をvi
sと同等にするために何が必要か
:set nobomb
BOM
が私が読んでいるファイルからのものであると仮定します。
JavaはBOMを適切に処理しません。実際、Javaは、他のすべての文字と同様にBOMを処理します。
これが見つかりました:
http://www.rgagnon.com/javadetails/Java-handle-utf8-file-with-bom.html
public static final String UTF8_BOM = "\uFEFF";
private static String removeUTF8BOM(String s) {
if (s.startsWith(UTF8_BOM)) {
s = s.substring(1);
}
return s;
}
代わりにApache IOを使用するかもしれません:
http://commons.Apache.org/proper/commons-io/apidocs/org/Apache/commons/io/input/BOMInputStream.html
UTF-8の場合、BOMは0xEF、0xBB、0xBFです。