怎样将一个exe文件转换成base64编码
答案:2 悬赏:0 手机版
解决时间 2021-02-21 18:14
- 提问者网友:一抹荒凉废墟
- 2021-02-21 09:20
怎样将一个exe文件转换成base64编码
最佳答案
- 五星知识达人网友:未来江山和你
- 2021-02-21 10:41
打开outlook express,写新邮件,把你的exe文件做为附件,另存为aaa.eml,用记事本打开aaa.eml,找到你的exe部分的编码即可。
全部回答
- 1楼网友:神也偏爱
- 2021-02-21 11:21
例子说明一切
先写单元测试吧:单元测试的代码如下:
package test.com.cs;
import com.cs.base64convert;
import junit.framework.testcase;
import java.io.filenotfoundexception;
import java.io.ioexception;
import java.util.logging.logger;
public class testbase64convert extends testcase {
base64convert basecov = null;
public testbase64convert(string s) {
super(s);
}
protected void setup() throws exception {
basecov = new base64convert();
}
protected void teardown() throws exception {
super.teardown();
}
public void testiotobase64() {
try {
string strbase64 = basecov.iotobase64(); //将 io 转换为 base64编码
system.out.println(">>> "+strbase64);
basecov.base64toio(strbase64); //将 base64编码转换为 io 文件流,生成一幅新图片
} catch (filenotfoundexception e) {
e.printstacktrace();
} catch (ioexception e) {
e.printstacktrace();
}
}
}
------------------------------------
package com.cs;
import sun.misc.base64decoder;
import sun.misc.base64encoder;
import java.io.*;
public class base64convert {
base64decoder decoder = new base64decoder();
public string iotobase64() throws ioexception {
string filename = "d:/gril.gif"; //源文件
string strbase64 = null;
try {
inputstream in = new fileinputstream(filename);
// in.available()返回文件的字节长度
byte[] bytes = new byte[in.available()];
// 将文件中的内容读入到数组中
in.read(bytes);
strbase64 = new base64encoder().encode(bytes); //将字节流数组转换为字符串
in.close();
} catch (filenotfoundexception fe) {
fe.printstacktrace();
} catch (ioexception ioe) {
ioe.printstacktrace();
}
return strbase64;
}
public void base64toio(string strbase64) throws ioexception {
string string = strbase64;
string filename = "d:/gril2.gif"; //生成的新文件
try {
// 解码,然后将字节转换为文件
byte[] bytes = new base64decoder().decodebuffer(string); //将字符串转换为byte数组
bytearrayinputstream in = new bytearrayinputstream(bytes);
byte[] buffer = new byte[1024];
fileoutputstream out = new fileoutputstream(filename);
int bytesum = 0;
int byteread = 0;
while ((byteread = in.read(buffer)) != -1) {
bytesum += byteread;
out.write(buffer, 0, byteread); //文件写操作
}
} catch (ioexception ioe) {
ioe.printstacktrace();
}
}
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯