java.lang.Object
org.miaixz.bus.core.io.unit.DataSize
- All Implemented Interfaces:
Comparable<DataSize>
数据大小,可以将类似于'12MB'表示转换为bytes长度的数字 此类来自于:Spring-framework
byte 1B 1
kilobyte 1KB 1,024
megabyte 1MB 1,048,576
gigabyte 1GB 1,073,741,824
terabyte 1TB 1,099,511,627,776
- Since:
- Java 17+
- Author:
- Kimi Liu
-
Method Summary
Modifier and TypeMethodDescriptionintbooleanstatic Stringformat(long size) static Stringformat(long size, boolean useSimpleName) static Stringstatic String根据单位,将文件大小转换为对应单位的大小inthashCode()boolean是否为负数,不包括0static DataSize获得指定DataUnit对应的DataSizestatic DataSizeof(BigDecimal amount, DataUnit unit) 获得指定DataUnit对应的DataSizestatic DataSizeofBytes(long bytes) 获得对应bytes的DataSizestatic DataSizeofGigabytes(long gigabytes) 获得对应gigabytes的DataSizestatic DataSizeofKilobytes(long kilobytes) 获得对应kilobytes的DataSizestatic DataSizeofMegabytes(long megabytes) 获得对应megabytes的DataSizestatic DataSizeofTerabytes(long terabytes) 获得对应terabytes的DataSizestatic DataSizeparse(CharSequence text) 获取指定数据大小文本对应的DataSize对象,如果无单位指定,默认获取DataUnit.BYTES例如:static DataSizeparse(CharSequence text, DataUnit defaultUnit) Obtain a DataSize from a text string such as12MBusing the specified defaultDataUnitif no unit is specified.static long获取指定数据大小文本对应的DataSize对象,如果无单位指定,默认获取DataUnit.BYTES例如:longtoBytes()返回bytes大小long返回GB大小long返回KB大小long返回MB大小toString()long返回TB大小
-
Method Details
-
ofBytes
获得对应bytes的DataSize- Parameters:
bytes- bytes大小,可正可负- Returns:
- this
-
ofKilobytes
获得对应kilobytes的DataSize- Parameters:
kilobytes- kilobytes大小,可正可负- Returns:
- a DataSize
-
ofMegabytes
获得对应megabytes的DataSize- Parameters:
megabytes- megabytes大小,可正可负- Returns:
- a DataSize
-
ofGigabytes
获得对应gigabytes的DataSize- Parameters:
gigabytes- gigabytes大小,可正可负- Returns:
- a DataSize
-
ofTerabytes
获得对应terabytes的DataSize- Parameters:
terabytes- terabytes大小,可正可负- Returns:
- a DataSize
-
of
获得指定DataUnit对应的DataSize- Parameters:
amount- 大小unit- 数据大小单位,null表示默认的BYTES- Returns:
- DataSize
-
of
获得指定DataUnit对应的DataSize- Parameters:
amount- 大小unit- 数据大小单位,null表示默认的BYTES- Returns:
- DataSize
-
parse
获取指定数据大小文本对应的DataSize对象,如果无单位指定,默认获取DataUnit.BYTES例如:"12KB" -- parses as "12 kilobytes" "5MB" -- parses as "5 megabytes" "20" -- parses as "20 bytes"
- Parameters:
text- the text to parse- Returns:
- the parsed DataSize
- See Also:
-
parse
获取指定数据大小文本对应的DataSize对象,如果无单位指定,默认获取DataUnit.BYTES例如:"12KB" -- parses as "12 kilobytes" "5MB" -- parses as "5 megabytes" "20" -- parses as "20 bytes"
- Parameters:
text- the text to parse- Returns:
- the parsed DataSize
- See Also:
-
parse
Obtain a DataSize from a text string such as12MBusing the specified defaultDataUnitif no unit is specified. The string starts with a number followed optionally by a unit matching one of the supported suffixes. Examples:"12KB" -- parses as "12 kilobytes" "5MB" -- parses as "5 megabytes" "20" -- parses as "20 kilobytes" (where the
defaultUnitisDataUnit.KILOBYTES)- Parameters:
text- the text to parsedefaultUnit- 默认的数据单位- Returns:
- the parsed DataSize
-
format
- Parameters:
size- Long类型大小- Returns:
- 大小
-
format
- Parameters:
size- Long类型大小useSimpleName- 是否使用简写,例如:1KB 简写成 1K- Returns:
- 大小
-
format
- Parameters:
size- Long类型大小scale- 小数点位数,四舍五入unitNames- 单位数组delimiter- 数字和单位的分隔符- Returns:
- 大小
-
format
根据单位,将文件大小转换为对应单位的大小- Parameters:
size- 文件大小fileDataUnit- 单位- Returns:
- 大小
-
isNegative
public boolean isNegative()是否为负数,不包括0- Returns:
- 负数返回true,否则false
-
toBytes
public long toBytes()返回bytes大小- Returns:
- bytes大小
-
toKilobytes
public long toKilobytes()返回KB大小- Returns:
- KB大小
-
toMegabytes
public long toMegabytes()返回MB大小- Returns:
- MB大小
-
toGigabytes
public long toGigabytes()返回GB大小- Returns:
- GB大小
-
toTerabytes
public long toTerabytes()返回TB大小- Returns:
- TB大小
-
compareTo
- Specified by:
compareToin interfaceComparable<DataSize>
-
toString
-
equals
-
hashCode
public int hashCode()
-