我用int len = FileInputStream.read(filename)的方法得到了文件大小14022字节,怎么转化成13.6KB的形式。
我用了下面的方法,但是结果不对??? int len = input.read(buffer, 0, buffer.length);
double tmp = (Math.round(((double)len / 1024.00)*100))/100.00;
我用了下面的方法,但是结果不对??? int len = input.read(buffer, 0, buffer.length);
double tmp = (Math.round(((double)len / 1024.00)*100))/100.00;
解决方案 »
- 我用S2SH 整合 AJAX 做一个简单的登录界面,无法获取json对象,而是获得一个html数据
- 线程同步问题
- struts2-core-2.1.8.1.jar +json0.34.rar+Ajax 报JSONResult错误,向各位大虾求救
- 想用Lucene做一个局域网的搜索引擎,怎样实现呢?
- spring struts hibernate整合问题 Caused by: org.springframework.beans.InvalidPropertyException: Invalid property 'studentManager' of
- 关于Oracle中Clob字段处理的问题(Struts+Hibernate)
- 关于Struts2.3.15文件上传问题
- ! 求文件上传代码
- 求助。ssh框架,最后映射表的时候出问题了。
- 实体bean关系?
- 话说ssh2的构架下,页面能用html嘛?里面要用struts2的标签的话怎么导入?
- SSH2配置报错
public static String bytes2kb(long size) {
DecimalFormat df = new DecimalFormat("###.##");
float f;
if (size < 1024 * 1024) {
f = (float) ((float) size / (float) 1024);
return (df.format(new Float(f).doubleValue()) + "KB");
} else {
f = (float) ((float) size / (float) (1024 * 1024));
return (df.format(new Float(f).doubleValue()) + "MB");
}
} public static void main(String[] args) { System.out.println(bytes2kb(14022));
}
float f;
int len = 14022;
f = (float) ((float) len / (float) 1024);
df.format(new Float(f).doubleValue());
System.out.println(df.toString());
理解错误,这句话不是得到格式化后的字符串,而是负责格式化这个对象的toString():
System.out.println(df.toString());应该是:
String str = df.format(new Float(f).doubleValue());
System.out.println(str);
i = i*10/1024;
double d = i/10d ;
System.out.println(d);
ok
如果是我的话,连小数都不要了,直接用右移算法求个大致 KB 数就算了,计算效率还高点。String str = (size >> 10) + "KB";