使用Java删除BOM字符

使用Java将字符串作为vi的等价物需要发生什么

 :set nobomb 

假设BOM来自我正在阅读的文件。

Java无法正确处理BOM。 事实上,Java像处理其他所有char一样处理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