当前位置:首页 > 尘凡 > 正文内容

java读写jar包自身包含的可执行文件

满纸空言3年前 (2021-12-28)尘凡15420

关键:   byte[] data = new byte[in.available()];

import java.io.*;
public class ethTool {

    public String saveFile() throws IOException {
        File file = File.createTempFile("ethtool","");
        file.setExecutable(true,false);//设置可执行权限
        file.setReadable(true,false);//设置可读权限
        file.setWritable(true,false);//设置可写权限
        writeMethod(file,readMethod());
        return file.getAbsolutePath();
    }

    public void writeMethod(File file, byte[] byteFile){
        try{
            DataOutputStream out=new DataOutputStream(
                    new BufferedOutputStream(new FileOutputStream(file)));
            out.write(byteFile);
            System.out.println(out.size()+" bytes have been written.");
            out.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public byte[] readMethod(){
        try {
            InputStream is = this.getClass().getResourceAsStream("/ethtool"); // windows可不加斜杠,linux必须加,否则获取不到
            BufferedInputStream in = new BufferedInputStream(is);
            try {
                byte[] data = new byte[in.available()];
                in.read(data);
                return data;
            } finally {
                in.close();
            }
        } catch (IOException e) {
            throw new RuntimeException(e);
        }
    }
    

    public static void main(String[] args) throws IOException {
        ethTool et = new ethTool();
        System.out.println(et.saveFile());
    }
}

扫描二维码推送至手机访问。

版权声明:本文由满纸空言发布,如需转载请注明出处。

本文链接:https://mzky.cc/post/77.html

分享给朋友:

“java读写jar包自身包含的可执行文件” 的相关文章

UOS编译keepalived3年前 (2021-08-06)
关于单元测试3年前 (2021-09-03)
Go的cron定时库差异3年前 (2021-09-06)

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。