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

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

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

关键:   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包自身包含的可执行文件” 的相关文章

golang计算中文文字数量3年前 (2021-04-21)
btrfs格式数据提取3年前 (2021-04-21)
keepalived+lvs配置3年前 (2021-05-12)
红旗11系统下载3年前 (2021-07-09)

发表评论

访客

看不清,换一张

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