File-size.js
File-size module for node.js for converting, manipulating, and handling file-sizes.
Features
- Zero Dependencies.
- Supports IEC (power
1024
, default), SI (power1000
), and JEDEC (Alternative SI Unit Notation). - Conversion from
bytes
toK
,M
,G
, and so forth... - Customizable human-readable output.
Installation
$ npm install file-size
Now require it in your files like so:
var filesize = ;
Usage
Using filesize is very easy, a lot easier if you know the Specification Table. However, it's not required to know it, and in most cases you won't need it.
Initialization
Filesize works in a jQuery chainable manner so you can use multiple instances without trouble.
var size = ;
Options
var size = ;
fixed
- Number of positions after the decimal to show, default is2
spacer
- Space between the number and the unit, default is a space
size.human(String spec) -> String
Generates human readable filesize.
spec
can be one of the following:si
iec
jedec
IEC Specification
Default
Power of 1024
// outputs: 177.82 MiB;
SI Specification
Power of 1000
// outputs: 186.46 MB;
JEDEC Specification
Changes IEC default unit notation iB
to B
for the following: KB
, MB
, GB
The rest are in iB
notation, as per JEDEC Specification.
// outputs: 186.46 MB;
size.to(String unit, String spec) -> String
Converts bytes
to another filesize unit
unit
of size can be one of the following:B
,KB
,MB
,GB
,TB
,PB
,EB
,ZB
,YB
spec
can be one of the following:si
iec
jedec
IEC Specification
Default
// outputs: 177.82;
SI Specification
// outputs: 186.46;
size.calculate(String spec) -> Object
Calculates suffix, magnitude, fixed, non-fixed, bits (fixed, non-fixed) from specified bytes against the specified spec
.
spec
can be one of the following:si
iec
jedec
/* * outputs: * * { * suffix: 'Bytes', * magnitude: 0, * result: 8, * fixed: '8.00', * bits: { result: 1, fixed: '1.00' } * }*/ var result =