用Java实现,把Byte,相应的转换为KB,MB,GB,TB
- 算法:先从文件中一行一行的读,把需要的转换的字节截取出来,然后用BigInteger类实现转换,为了方便计算,我们用10三次方,替代1024计算。
package com.Capacity;import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.math.BigInteger;
//转换为相应的KB,MB,GB,TBpublic class Demo01 {public static void readData() {//选择的是字符流FileReader fr=null;FileWriter fw=null;;PrintWriter pw=null;BufferedReader bd=null;try {fr=new FileReader(new File("F://1.txt") );bd=new BufferedReader(fr);fw = new FileWriter(new File("F://2.txt"), true);pw=new PrintWriter(fw);String str=bd.readLine();while(str!=null){int i=str.indexOf("Capacity:");if(i!=-1){int j=str.indexOf(", FreeSpace");String str2=str.substring(i+9, j);//Integer.parseInt(str2)BigInteger p1=new BigInteger(str2);BigInteger p=BigInteger.TEN.multiply(BigInteger.TEN).multiply(BigInteger.TEN);//10的三次方BigInteger p2=p1.divide(p);int cnt=1;while(p2.compareTo(p)>=0){p2=p2.divide(p);cnt++; }if(cnt==1)str2=p2+"KB";else {if(cnt==2)str2=p2+"MB";else {if(cnt==3)str2=p2+"GB";else {if(cnt==4)str2=p2+"TB";}}} pw.println(str2);}str=bd.readLine();}System.out.println("OK");} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}finally {try {bd.close();} catch (IOException e) {e.printStackTrace();}pw.close();}}public static void main(String[] args) {Demo01.readData();}}
源文件我已经上传到blog,如果你需要可以前往下载,谢谢!
https://download.csdn.net/download/likang315/10679880
用Java实现,把Byte,相应的转换为KB,MB,GB,TB相关推荐
- java mb单位转换_Java计算机硬盘大小转换(B,KB,MB,GB,TB,PB之间的大小转换)
程序员都很懒,你懂的! java程序员在实际的开发中会遇到很多的单位换算问题.今天我给大家带来的是关于计算机硬盘大小的换算.多数情况下,一般要求 b,kb,mb,gb,tb,pb之间的大小转换,我们都 ...
- 计算机存储单位:bit, Byte, KB, MB, GB, TB, PB, EB, ZB, BB
一.计算机的存储单位有哪些呢? 计算机存储单位一般用 bit, Byte, KB, MB, GB, TB, PB, EB, ZB, BB来表示, 我们经常将Byte简称为B,将KB简称问K.什么几K了 ...
- 关于计算机、数据的存储单位(bit, Byte, KB, MB, GB, TB, PB, EB, ZB, BB)
计算机.数据存储的单位 一.数据存储的单位有哪些 二.单位换算 三.为什么计算机储存单位的进率是1024而不是1000? 一.数据存储的单位有哪些 计算机存储单位一般用 bit, Byte, KB ...
- (Bit / Byte / KB / MB / GB / TB ) 概念与单位换算
文章目录 - 名词解释 - 单位换算 - 名词解释 名词 1b (bit 位,比特位,计算机表示数据最小的单位, 二进制的范畴,存放一位二进制数,即0或1) 1B (Byte 字节) 1KB (Kil ...
- bit,byte,汉字,KB,MB,GB,TB...
bit-----位,比特位,这两种说法都可以.它是计算机中最小的存储数据单位,最小的. 比如:1111 1111 或者0000 0000每一个1或者每个0都是一个bit. byte --字节( ...
- 计算机内部的单位换算(内存)byte B KB MB GB TB
基本储存单元 位(bit):二进制数中的一个数位,可以是0或者1,是计算机中数据的最小单位. 字节(Byte,B):计算机中数据的基本单位,每8位组成一个字节.各种信息在计算机中存储.处理至少需要一个 ...
- 位(bit),字节(Byte),KB,MB,GB,TB,UTF-8,Unicode,字符集,排序规则
1字节(byte) = 8位(bit) 1KB=1024byte 1MB=1024KB 1GB=1024MB 位(bit):位只有两种形式0和1 字节(byte):字节是有8个位组成的.可以表示256 ...
- java byte转文件大小_java上传文件大小转换(字节转kb/mb/gb)
/** * 字节转kb/mb/gb * @param size * @return */ public String getPrintSize(long size) { //如果字节数少于1024,则 ...
- java b kb mb gb 转换_java 上传文件大小转换为 GB/MB/KB/B
1.工具类 package cn.cmodes.common.utils; import java.io.File; import java.io.FileInputStream; import ja ...
最新文章
- 【JAVA】使用IntelliJ IDEA创建Java控制台工程
- 网络知识入门:路由器基础知识全接触
- php创建mysql分区,MySql创建分区表
- Oracle 表对象被锁的解决办法
- 算法模板java_我的Java设计模式-模板方法模式
- 基于Python+OpenCV的人脸口罩识别检测
- Android自定义View——动态ProgressBar之模仿360加速球
- 常用软件写网页html,新手用什么软件写html网页比较靠谱
- C++ struct内部定义函数
- Slider网站欣赏
- 商业银行vh是哪个银行的简称_各个银行缩写是什么
- ffmpeg视频转码压缩
- 环信移动客服客服昵称头像设置
- 解决Allocate exception for servlet XXXServlet
- Android接入支付宝实现支付功能
- 协同办公风口来袭,在线文档顺势崛起!
- 通过C#和Arduino实现软件示波器
- PTA题目 到底是不是太胖了
- 陈皓谈对待技术的态度
- 奇偶校验(Parity Check)