java 二进制乱码_这样的一堆乱码怎么转换成二进制数

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

package fileto2;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileOutputStream;

import java.io.InputStream;

import java.io.OutputStream;

public class TestFileto2 {

public static void main(String[] args) {

try {

// InputStream filein = new FileInputStream(new File("E:\\图片壁纸\\动漫萌妹纸\\111.txt"));

InputStream filein = new FileInputStream(new File("E:\\图片壁纸\\动漫萌妹纸\\1462-1206121A005.jpg"));

OutputStream fileout = new FileOutputStream(new File("E:\\图片壁纸\\动漫萌妹纸\\112.txt"));

byte[] buf =new byte[1024];

int len=0;

while((len=filein.read(buf))!=-1){

//遍历每一个字节

for(int k = 0; k

byte temp = buf[k];

//吧二进制变成了字符串

String s =Integer.toBinaryString(temp);

//字符串长度超过8就截取后8位,少于8就加0

if(s.length()>8){

s=s.substring(23,31);

}

if(s.length()<8){

int l = s.length();

for (int i = 0; i <8-l; i++) {

s="0"+s;

}

}

char[] cha=s.toCharArray();

//吧字符串形式的二进制存入bytes数组

//一个bytes表示一个字节

int[] bytes = {*0*,*0*,*0*,*0*,*0*,*0*,*0*,*0*};

for (int i = 0; i < 8; i++) {

bytes[i] = cha[i];

}

//吧bytes数组里的东西传到输出流

for (int i = 0; i < bytes.length; i++) {

fileout.write(bytes[i]);

}

}

}

} catch (Exception e) {

e.printStackTrace();

}

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值