pull/1511/head
gedoor 3 years ago
parent 6dc6a45361
commit 100218060e
  1. 13
      app/src/main/java/io/legado/app/utils/UTF8BOMFighter.kt

@ -18,9 +18,9 @@ object UTF8BOMFighter {
fun removeUTF8BOM(bytes: ByteArray): ByteArray { fun removeUTF8BOM(bytes: ByteArray): ByteArray {
val containsBOM = (bytes.size > 3 val containsBOM = (bytes.size > 3
&& bytes[0] == UTF8_BOM_BYTES[0] && bytes[0] == UTF8_BOM_BYTES[0]
&& bytes[1] == UTF8_BOM_BYTES[1] && bytes[1] == UTF8_BOM_BYTES[1]
&& bytes[2] == UTF8_BOM_BYTES[2]) && bytes[2] == UTF8_BOM_BYTES[2])
if (containsBOM) { if (containsBOM) {
val copy = ByteArray(bytes.size - 3) val copy = ByteArray(bytes.size - 3)
System.arraycopy(bytes, 3, copy, 0, bytes.size - 3) System.arraycopy(bytes, 3, copy, 0, bytes.size - 3)
@ -28,4 +28,11 @@ object UTF8BOMFighter {
} }
return bytes return bytes
} }
fun hasBom(bytes: ByteArray): Boolean {
return (bytes.size > 3
&& bytes[0] == UTF8_BOM_BYTES[0]
&& bytes[1] == UTF8_BOM_BYTES[1]
&& bytes[2] == UTF8_BOM_BYTES[2])
}
} }
Loading…
Cancel
Save