This commit is contained in:
Looly 2020-07-16 12:02:55 +08:00
parent d70687d20d
commit 1cc66f086e
3 changed files with 27 additions and 2 deletions

View File

@ -16,7 +16,7 @@ public class DataSizeUtil {
* @param text 数据大小字符串类似于12KB, 5MB等
* @return bytes大小
*/
public long parse(String text) {
public static long parse(String text) {
return DataSize.parse(text).toBytes();
}

View File

@ -1,5 +1,7 @@
package cn.hutool.core.io.unit;
import cn.hutool.core.util.StrUtil;
/**
* 数据单位封装<p>
* 此类来自于Spring-framework
@ -69,7 +71,8 @@ public enum DataUnit {
*/
public static DataUnit fromSuffix(String suffix) {
for (DataUnit candidate : values()) {
if (candidate.suffix.equalsIgnoreCase(suffix)) {
// 支持类似于 3MB3M3m等写法
if (StrUtil.startWithIgnoreCase(candidate.suffix, suffix)) {
return candidate;
}
}

View File

@ -0,0 +1,22 @@
package cn.hutool.core.io.unit;
import org.junit.Assert;
import org.junit.Test;
public class DataSizeUtilTest {
@Test
public void parseTest(){
long parse = DataSizeUtil.parse("3M");
Assert.assertEquals(3145728, parse);
parse = DataSizeUtil.parse("3m");
Assert.assertEquals(3145728, parse);
parse = DataSizeUtil.parse("3MB");
Assert.assertEquals(3145728, parse);
parse = DataSizeUtil.parse("3mb");
Assert.assertEquals(3145728, parse);
}
}