public class BinaryGuesser
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
static int |
ASCII_CHAR_THRESHOLD |
private static java.lang.String[] |
AUDIO_EXTENSIONS |
private static java.lang.String[] |
BYTECODE_EXTENSIONS |
private static java.nio.charset.Charset |
CHARSET_FROM_FILE_ENCODING_OR_UTF8 |
private static java.lang.String[] |
DATA_EXTENSIONS |
private static java.lang.String |
DOT |
private static java.lang.String[] |
EXE_EXTENSIONS |
(package private) static java.lang.String |
FILE_ENCODING |
static int |
HIGH_BYTES_RATIO |
private static java.lang.String[] |
IMAGE_EXTENSIONS |
static java.lang.String |
JAR_MANIFEST |
static java.lang.String |
JAVA |
private static java.lang.String[] |
KEYSTORE_EXTENSIONS |
static int |
NON_ASCII_THRESHOLD |
private static java.lang.String[] |
NON_BINARY_EXTENSIONS
Based on https://www.apache.org/dev/svn-eol-style.txt
|
static int |
TOTAL_READ_RATIO |
| Constructor and Description |
|---|
BinaryGuesser() |
| Modifier and Type | Method and Description |
|---|---|
static boolean |
containsExtension(java.lang.String name,
java.lang.String[] exts) |
static boolean |
extensionMatches(java.lang.String name,
java.lang.String[] exts) |
(package private) static java.nio.charset.Charset |
getFileEncodingOrUTF8AsFallback() |
static boolean |
isAudio(java.lang.String name) |
private static boolean |
isBinary(java.lang.CharSequence taste) |
static boolean |
isBinary(Document document) |
static boolean |
isBinary(java.io.InputStream in) |
static boolean |
isBinary(java.io.Reader in) |
static boolean |
isBinary(java.lang.String name) |
static boolean |
isBinaryData(java.lang.String name) |
private static boolean |
isBinaryDocument(Document document) |
static boolean |
isBytecode(java.lang.String name) |
static boolean |
isExecutable(java.lang.String name) |
static boolean |
isImage(java.lang.String name) |
static boolean |
isKeystore(java.lang.String name) |
static boolean |
isNonBinary(java.lang.String name) |
private static final java.lang.String DOT
static final java.lang.String FILE_ENCODING
private static java.nio.charset.Charset CHARSET_FROM_FILE_ENCODING_OR_UTF8
private static final java.lang.String[] DATA_EXTENSIONS
private static final java.lang.String[] EXE_EXTENSIONS
private static final java.lang.String[] KEYSTORE_EXTENSIONS
private static final java.lang.String[] IMAGE_EXTENSIONS
private static final java.lang.String[] BYTECODE_EXTENSIONS
private static final java.lang.String[] AUDIO_EXTENSIONS
private static final java.lang.String[] NON_BINARY_EXTENSIONS
public static final java.lang.String JAR_MANIFEST
public static final java.lang.String JAVA
public static final int HIGH_BYTES_RATIO
public static final int TOTAL_READ_RATIO
public static final int NON_ASCII_THRESHOLD
public static final int ASCII_CHAR_THRESHOLD
private static boolean isBinaryDocument(Document document)
private static boolean isBinary(java.lang.CharSequence taste)
public static boolean isBinary(java.io.Reader in)
in - the file to check.Any IOException is swallowed internally and the test returns false.
This method may lead to false negatives if the reader throws an exception because it can't read characters according to the reader's encoding from the underlying stream.
public static boolean isBinary(java.io.InputStream in)
in - the file to check.Any IOException is swallowed internally and the test returns false.
This method will try to read bytes from the stream and translate them to characters according to the platform's default encoding. If any bytes can not be translated to characters it will assume the original data must be binary and return true.
static java.nio.charset.Charset getFileEncodingOrUTF8AsFallback()
public static final boolean isBinaryData(java.lang.String name)
name - current file name.public static final boolean isNonBinary(java.lang.String name)
name - current file name.public static final boolean isExecutable(java.lang.String name)
name - current file name.public static boolean containsExtension(java.lang.String name,
java.lang.String[] exts)
public static boolean extensionMatches(java.lang.String name,
java.lang.String[] exts)
public static boolean isBytecode(java.lang.String name)
public static final boolean isImage(java.lang.String name)
public static final boolean isKeystore(java.lang.String name)
public static final boolean isAudio(java.lang.String name)
public static final boolean isBinary(java.lang.String name)
name - file name.public static final boolean isBinary(Document document)