Detects if a file is binary in Node.js. Similar to Perl's -B.
text binary encoding istext is text isbinary is binary is text or binary is text or binary file isbinaryfile is binary file istextfile is text file


Project Name isbinaryfile Project Url
InceptionYear 2012-10-09 05:40:12 更新时间 2019-01-08 10:55:09
IssueManagement Licenses MIT
仓库地址 git+ 用户数 3
Node Engine >= 8.0.0 文件大小 3.6 KB
install build format lint prepare release prepublishOnly preversion version postversion test watch


# isBinaryFile Detects if a file is binary in Node.js using ✨promises✨. Similar to [Perl's `-B` switch](, in that: - it reads the first few thousand bytes of a file - checks for a `null` byte; if it's found, it's binary - flags non-ASCII characters. After a certain number of "weird" characters, the file is flagged as binary Much of the logic is pretty much ported from [ag]( Note: if the file doesn't exist or is a directory, an error is thrown. ## Installation ``` npm install isbinaryfile ``` ## Usage Returns `Promise` (or just `boolean` for `*Sync`). `true` if the file is binary, `false` otherwise. ### isBinaryFile(filepath) * `filepath` - a `string` indicating the path to the file. ### isBinaryFile(bytes[, size]) * `bytes` - a `Buffer` of the file's contents. * `size` - an optional `number` indicating the file size. ### isBinaryFileSync(filepath) * `filepath` - a `string` indicating the path to the file. ### isBinaryFileSync(bytes[, size]) * `bytes` - a `Buffer` of the file's contents. * `size` - an optional `number` indicating the file size. ### Examples Here's an arbitrary usage: ```javascript const isBinaryFile = require("isbinaryfile").isBinaryFile; const fs = require("fs"); const filename = "fixtures/pdf.pdf"; const data = fs.readFileSync(filename); const stat = fs.lstatSync(filename); isBinaryFile(data, stat.size).then((result) => { if (result) { console.log("It is binary!") } else { console.log("No it is not.") } }); const isBinaryFileSync = require("isbinaryfile").isBinaryFileSync; const bytes = fs.readFileSync(filename); const size = fs.lstatSync(filename).size; console.log(isBinaryFileSync(bytes, size)); // true or false ``` ## Testing Run `npm install`, then run `npm test`.


GroupId ArtifactID Version 引用量
aaronabramov jest 26.1.0 114607
James Long prettier 2.0.5 70619
Lars Kappert release-it 13.6.4 2719
Kulshekhar Kabra ts-jest 26.1.1 38062
palantir tslint 6.1.2 64018
Alex Jover Morales tslint-config-prettier 1.18.0 5129