1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 后台获取文件大小 自动转换 B KB MB GB

后台获取文件大小 自动转换 B KB MB GB

时间:2018-05-24 06:49:09

相关推荐

后台获取文件大小  自动转换 B KB MB GB

java获取文件大小

io方式

package filesize;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.math.BigDecimal;import java.nio.channels.FileChannel;public class size2 {public static void main(String[] args) {FileChannel fc = null;try {File f = new File("D:\\chengxu\\Chrome浏览器插件\\o_1apk0a5or1q77e3ie2g1k261nkba.zip");if (f.exists() && f.isFile()) {FileInputStream fis = new FileInputStream(f);fc = fis.getChannel();// logger.info(fc.size());System.out.println(fc.size() + " 字节");System.out.println(getPrintSize(fc.size()));} else {// logger.info("file doesn't exist or is not a file");System.out.println("file doesn't exist or is not a file");}} catch (FileNotFoundException e) {// logger.error(e);System.err.println(e);} catch (IOException e) {// logger.error(e);System.err.println(e);} finally {if (null != fc) {try {fc.close();} catch (IOException e) {// logger.error(e);System.err.println(e);}}}}public static String getPrintSize(long size) {// 如果字节数少于1024,则直接以B为单位,否则先除于1024,后3位因太少无意义double value = (double) size;if (value < 1024) {return String.valueOf(value) + "B";} else {value = new BigDecimal(value / 1024).setScale(2, BigDecimal.ROUND_DOWN).doubleValue();}// 如果原字节数除于1024之后,少于1024,则可以直接以KB作为单位// 因为还没有到达要使用另一个单位的时候// 接下去以此类推if (value < 1024) {return String.valueOf(value) + "KB";} else {value = new BigDecimal(value / 1024).setScale(2, BigDecimal.ROUND_DOWN).doubleValue();}if (value < 1024) {return String.valueOf(value) + "MB";} else {// 否则如果要以GB为单位的,先除于1024再作同样的处理value = new BigDecimal(value / 1024).setScale(2, BigDecimal.ROUND_DOWN).doubleValue();return String.valueOf(value) + "GB";}}}

用文件的方式获取大小

public static void main(String[] args) {File f = new File("/D:/workspace-wd/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/wdplus-web/WEB-INF/classes/../../upload/1BPTD91150006701A8C0000046294E99.jpg");if (f.exists() && f.isFile()) {// logger.info(f.length());System.out.println(f.length() + " 字节");System.out.println(getPrintSize(f.length()));} else {// logger.info("file doesn't exist or is not a file");System.out.println("file doesn't exist or is not a file");}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。