我有一列“文件大小”输出不佳,因为它不一致。例如,值可能是“4GB”,“32 MB”,“320 KB”,“932字节”等。我需要将这些全部转换为标准值,以便我可以将它们添加为报告。将各种文件大小转换为字节
2
A
回答
0
字节,千字节,兆字节等都是公制单位。只需为您的报告选择一个标准单位(例如兆字节),然后乘以或除以不同单位给出的值即可获得您需要的值。
1
我会说你有两个选择:
1:要求所有的这些数据可以以字节为单位(可能不是可行的,如果数据已经存在)
2:使用正则表达式来分隔然后使用一个switch语句(或循环或任何你喜欢的)来执行正确的乘法运算,以获得以字节为单位的数字(可能是两者中较容易的)。
编辑:
的正则表达式将是这个样子:
(\d*) *(.*)
这将分别捕获数字和单位而忽视了两者之间的任何空白(你仍然需要修正输入到正则表达式,因为前面和后面的空格可能会导致一些悲伤)。
2
考虑使用此方法
- 接一个显示格式。也许选择字节。
对于每个小区:
确定其比例。这可能涉及字符串解析,寻找“结束于”一些有效范围的可能性:“字节”,“kb”,“mb”,“gb”,“千字节”,“千兆字节”。首先转换为小写,以确保清醒。考虑拼写错误!
提取数字。使用此VBA numeric regex的变体来提取数字。小心小数点!
你的输出将是(对数)×(以字节为单位的规模)
2
这里是一个非常单纯的答案 - 但它可能使这是一个非常快速修复你,如果精确的字节计数并非全部重要。只要做一个简单的文字搜索和替换。
用“000”,“MB”用“000000”和“GB”用“000000000”替换“KB”(和“千字节”及其他变体)。用“”替换“字节”。然后将单元格/列类型转换为数字。
如果值是用小数(“4.32 MB”)给出的,那么它不会那么容易,但是您的示例应该可以正常工作。
相关问题
- 1. 将文件截断为字节大小
- 2. 如何将几个.ai文件自动转换为各种大小的.png文件?
- 3. 如何将字节转换为小数?
- 4. 将文件大小从MB转换为字节并使用bash进行比较
- 5. 将大文件转换为Android上的字节数组
- 6. scala - 将字节[]转换为大小写类实例
- 7. 将int转换为不同大小的字节数组
- 8. 将python long/int转换为固定大小的字节数组
- 9. 将小写字母转换为大写
- 10. 将小写字母转换为大写
- 11. PHP - 将字符串转换为各种日期格式
- 12. 将字符串转换为各种格式
- 13. C# - 文件大小转换(字节到GB)
- 14. 如何转换Grails中的字节文件大小
- 15. 如何将各种尺寸的TIFF文件转换为页面大小为8.5“×11”的统一大小的PDF文件而不会丢失质量?
- 16. 如何将字节[]转换为字节[]
- 17. 将字节转换为位
- 18. 将字节[]转换为int
- 19. 将IRandomAccessStreamWithContentType转换为字节[]
- 20. 将字节[]转换为SAFEARRAY
- 21. 将字节[]转换为Int8
- 22. 将FloatBuffer []转换为字节[]
- 23. 将字节转换为SByte
- 24. 将字节[]转换为PDF
- 25. 将NSData转换为字节
- 26. 将DataHandler转换为字节[]
- 27. 将字节[]转换为JsonObject
- 28. 将文件转换为字节数组,然后转换为字符串,然后转换为字节数组,然后转换为原始文件
- 29. 用vim交换多行中的各种大小字
- 30. 如何将数字字段(大小:10)转换为字符字段(大小:7)
请发布您尝试过什么,结果如何。 – 2010-11-01 20:22:40
如果没有适当的基础数据,您的价值观将会被错误地重复。以GB表示时,499MB是否消耗0或1GB? '932字节'呢? ...〜4GB数据中有多少字节? 4294967296或4400000000或3900000000 ....只是需要考虑。使用粗糙的四舍五入并完成它。 – jcolebrand 2010-11-01 20:23:39