java中文件长度的转换

中文|转换

java中文件长度的转换

我们使用java.io.File对象创建一个具体的文件句柄,然后就可以通过这个对象

获取该文件的一些信息了, 但是在我们得到文件长度的时候,返回的是一个long类型的整数,

单位是byte,也就是字节。有时候当文件过大的时候,我们就需要转换成Mb或者

Gb。下面写了个函数实现这个功能:

File objFile = new File("c:\\cqq.rar");
long filesize=objFile.getLength();

static String convertFileSize(long filesize)

{

String strUnit="Bytes";

String strAfterComma="";

int intDivisor=1;

if(filesize>=1024*1024)

{

strUnit = "MB";

intDivisor=1024*1024;

}

else if(filesize>=1024)

{

strUnit = "KB";

intDivisor=1024;

}
if(intDivisor==1) return filesize + " " + strUnit;

strAfterComma = "" + 100 * (filesize % intDivisor) / intDivisor ;

if(strAfterComma=="") strAfterComma=".0";

return filesize / intDivisor + "." + strAfterComma + " " + strUnit;

}

时间: 2024-12-01 01:28:08

java中文件长度的转换的相关文章

java中进制的转换,Byte与16进制的转换方法_java

java中对于进制的转换有很多方式,其中对于常见的基本的二进制 八进制 十进制 十六进制等的转换有对于的包装类实现,不需要通过二外的算法来进行实现,具体如下: 首先关于最简单的二进制转换的方法有: 十进制转成十六进制: String Integer.toHexString(int i) 十进制转成八进制 String Integer.toOctalString(int i) 十进制转成二进制  String Integer.toBinaryString(int i) 十六进制转成十进制 Inte

在java中如何将输入流转换成数组

问题描述 在java中如何将输入流转换成数组 客户端发送数组,服务器端接受并排序.如何将接受的输入流转换成数组 解决方案 http://outofmemory.cn/code-snippet/11389/java-convert-inputstream-to-byte-array 解决方案二: 如何将伪数组转换成数组 解决方案三: apache comments io包中的IOUtils中有现成的方法 解决方案四: 字符串转化成整形数组?字节数组取出来的值就是0-127的数.

java 文件输入输...-关于JAVA中文件的map写入操作

问题描述 关于JAVA中文件的map写入操作 想实现一个功能,首先有个map,不过只有一条数据.判断在指定路径是否有文件存在,如果没有则先创建再将map写入,如果指定路径有文件存在则直接写入或者,追加记录.谢谢了 解决方案 File.isFile方法可以判断文件是否存在: 写入的追加可以在申明输出流的时候加标志: 例如new FileOutputStream(File or filename, append) append为true表示追加写入: 如果要直接写入map,可以用序列化. 解决方案二

java中文件读取文件操作数据库

问题描述 java中文件读取文件操作数据库 给个例子 谢谢 解决方案 连接数据库:public class DBConnect {public Connection getConnect(String driver, String url, String user, String pwd) {Connection conn = null;try {Class.forName(driver);conn = DriverManager.getConnection(url, user, pwd);}

java中文件夹遍历与统计文件夹中文件总行数据

先来看文件夹遍历  代码如下 复制代码 //By LYLtim import java.io.File; public class TestFile {  public static void main(String[] args) {   File f = new File("D:/Temp/LYLtim_OI");   System.out.println(f.getName());   list(f, 0);  }  static void list(File f, int lv

java中如何把图片转换成二进制文件放在数据库中

问题描述 1.我想知道稍微具体点的方法.2.和把图片存在文件夹,再记下路径比起来,哪个更好更有效率 解决方案 解决方案二:引用楼主liuxiaoning的回复: 2.和把图片存在文件夹,再记下路径比起来,哪个更好更有效率 记路径的方式效率要高,但是安全性差,知道图片路径就可以下载下来.把图片存入数据库中,安全性高了,但是IO操作效率低,可以利用java.sql.Clob来存取大文件解决方案三: 解决方案四:以流的方式写入和写出,至于效率1L比较中肯

关于java中null的强制转换

问题描述 public class Test {public static void greet(){System.out.println("hello");}public static void main(String[] args){((Test)null).greet();}}会打印出:hello但是原因是什么呢 解决方案 null的对象在内存中只是一个引用而已,你加了强类型转换,就成了Test类,解决方案二:你的greet()方法是静态的,所以可以执行,跟前面的对象是否为空没有

java中关于html的转换

转换 请看下面这个例子  public static String escapeHTMLTags( String input ) {        // Check if the string is null or zero length -- if so, return what was sent in.        if( input == null || input.length() == 0 ) {            return input;        }        //

java中url汉字编码互相转换实例_java

Java代码如下: 复制代码 代码如下: package com.gjob.common;public class URLtoUTF8 {    //转换为%E4%BD%A0形式    public static String toUtf8String(String s) {        StringBuffer sb = new StringBuffer();        for (int i = 0; i < s.length(); i++) {            char c =