public enum DataUnit extends Enum<DataUnit>
A DataUnit offers representation and conversion of various quantity of bytes/bits. Release 2.0.0 introduces exa, zetta, and yotta units.
As of 2.0.0, this class aligns with the international standard system of units by treating decimal and binary notations distinctively. Each are represented as:
Decimal | Binary | ||||
---|---|---|---|---|---|
k | kilo | 103 | Ki | kibi | 210 |
M | mega | 106 | Mi | mebi | 220 |
G | giga | 109 | Gi | gibi | 230 |
T | tera | 1012 | Ti | tebi | 240 |
P | peta | 1015 | Pi | pebi | 250 |
E | exa | 1018 | Ei | exbi | 260 |
Z | zetta | 1021 | Zi | zebi | 270 |
Y | yotta | 1024 | Yi | yobi | 280 |
As of 2.0.0, this class supports bits in addition to bytes. They are represented as:
B | bytes (8-bit) |
---|---|
bit | bits |
// how many kibibyte in a gibiabyte amount (binary notation). long kibibyte = DataUnit.GIB.to(3, KIB).longValue(); // results = 3072 // how many megabyte in a kilobyte amount (decimal notation) float megabyte = DataUnit.KB.to(2500, MB).floatValue(); // results = 2.5
DataUnitFormatter
Enum Constant and Description |
---|
B
A single byte (8 bits).
|
BIT
A single bit.
|
EB |
EBIT |
EIB |
EIBIT |
GB |
GBIT |
GIB |
GIBIT |
KB |
KBIT |
KIB |
KIBIT |
MB |
MBIT |
MIB |
MIBIT |
PB |
PBIT |
PIB |
PIBIT |
TB |
TBIT |
TIB |
TIBIT |
YB |
YBIT |
YIB |
YIBIT |
ZB |
ZBIT |
ZIB |
ZIBIT |
Modifier and Type | Field and Description |
---|---|
static List<DataUnit> |
BINARY_BIT_UNITS |
static List<DataUnit> |
BINARY_BYTE_UNITS |
static List<DataUnit> |
DECIMAL_BIT_UNITS |
static List<DataUnit> |
DECIMAL_BYTE_UNITS |
Modifier and Type | Method and Description |
---|---|
BigInteger |
bits() |
BigInteger |
bytes() |
long |
convert(long sourceAmount,
DataUnit sourceUnit)
Deprecated.
Since 2.0.0, use
from(BigDecimal, DataUnit) |
BigDecimal |
from(BigDecimal sourceAmount,
DataUnit sourceUnit)
Converts an amount of a specific unit to this unit.
|
BigDecimal |
from(double sourceAmount,
DataUnit sourceUnit)
Converts an amount of a specific unit to this unit.
|
static DataUnit |
from(String dataUnit)
Gets the unit value representing the given text.
|
BigDecimal |
fromBits(BigDecimal amount) |
BigDecimal |
fromBits(double amount) |
BigDecimal |
fromBytes(BigDecimal amount) |
BigDecimal |
fromBytes(double amount) |
int |
getGroupIndex() |
String |
getName() |
String |
getPrefix() |
String |
getSymbol() |
boolean |
isBinary() |
boolean |
isBitUnit() |
boolean |
isByteUnit() |
boolean |
isDecimal() |
BigDecimal |
to(BigDecimal sourceAmount,
DataUnit targetUnit) |
BigDecimal |
to(double sourceAmount,
DataUnit targetUnit) |
BigDecimal |
toBits(BigDecimal amount) |
BigDecimal |
toBits(double amount) |
BigDecimal |
toBytes(BigDecimal amount) |
BigDecimal |
toBytes(double amount) |
long |
toGigabytes(long amount)
Deprecated.
|
long |
toKilobytes(long amount)
Deprecated.
|
long |
toMegabytes(long amount)
Deprecated.
|
long |
toPetabytes(long amount)
Deprecated.
|
String |
toString() |
long |
toTerabytes(long amount)
Deprecated.
|
static DataUnit |
valueOf(String name)
Returns the enum constant of this type with the specified name.
|
static DataUnit[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
public static final DataUnit BIT
public static final DataUnit B
public static final DataUnit KBIT
public static final DataUnit MBIT
public static final DataUnit GBIT
public static final DataUnit TBIT
public static final DataUnit PBIT
public static final DataUnit EBIT
public static final DataUnit ZBIT
public static final DataUnit YBIT
public static final DataUnit KB
public static final DataUnit MB
public static final DataUnit GB
public static final DataUnit TB
public static final DataUnit PB
public static final DataUnit EB
public static final DataUnit ZB
public static final DataUnit YB
public static final DataUnit KIBIT
public static final DataUnit MIBIT
public static final DataUnit GIBIT
public static final DataUnit TIBIT
public static final DataUnit PIBIT
public static final DataUnit EIBIT
public static final DataUnit ZIBIT
public static final DataUnit YIBIT
public static final DataUnit KIB
public static final DataUnit MIB
public static final DataUnit GIB
public static final DataUnit TIB
public static final DataUnit PIB
public static final DataUnit EIB
public static final DataUnit ZIB
public static final DataUnit YIB
public static DataUnit[] values()
for (DataUnit c : DataUnit.values()) System.out.println(c);
public static DataUnit valueOf(String name)
name
- the name of the enum constant to be returned.IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is nullpublic String getSymbol()
public String getPrefix()
public String getName()
public int getGroupIndex()
public boolean isBitUnit()
public boolean isByteUnit()
public boolean isBinary()
public boolean isDecimal()
public BigInteger bits()
public BigInteger bytes()
public BigDecimal toBits(double amount)
public BigDecimal toBits(BigDecimal amount)
public BigDecimal toBytes(double amount)
public BigDecimal toBytes(BigDecimal amount)
public BigDecimal fromBits(double amount)
public BigDecimal fromBits(BigDecimal amount)
public BigDecimal fromBytes(double amount)
public BigDecimal fromBytes(BigDecimal amount)
public BigDecimal to(double sourceAmount, DataUnit targetUnit)
public BigDecimal to(BigDecimal sourceAmount, DataUnit targetUnit)
public BigDecimal from(double sourceAmount, DataUnit sourceUnit)
sourceAmount
- source amount to convertsourceUnit
- source unit to convertpublic BigDecimal from(BigDecimal sourceAmount, DataUnit sourceUnit)
sourceAmount
- source amount to convertsourceUnit
- source unit to convertpublic static DataUnit from(String dataUnit)
dataUnit
- the textual representation of the unit.null
if no match.@Deprecated public long convert(long sourceAmount, DataUnit sourceUnit)
from(BigDecimal, DataUnit)
sourceAmount
- source data amountsourceUnit
- source data unit@Deprecated public long toKilobytes(long amount)
@Deprecated public long toMegabytes(long amount)
@Deprecated public long toGigabytes(long amount)
@Deprecated public long toTerabytes(long amount)
@Deprecated public long toPetabytes(long amount)
Copyright © 2008–2023 Norconex Inc.. All rights reserved.