Jos*_*bel 2 java exe jar getresource java.util.scanner
我已经打包我的jar文件内的exe文件,我试图将其复制到一个临时位置,这样我可以使用运行它Desktop.browse()
,要做到这一点,我设置了输入流构造扫描仪使用class.getResourceAsStream
,然后用printwriter
写的,所有的到一个文件.发生的问题表明exe无效.我认为这是由于一些二进制数据丢失.如果有人可以提供帮助,请发表评论.
Scanner sc = new Scanner(ClassBuilder.class.getResourceAsStream("jd-gui.exe"));
File copy = new File("C://users//Owner//Desktop//java//jd-gui.exe");
copy.createNewFile();
PrintWriter writer = new PrintWriter(copy);
while(sc.hasNextLine())
writer.println(sc.nextLine());
writer.flush();
writer.close();
sc.close();
Desktop.getDesktop().browse(copy.toURI());
Run Code Online (Sandbox Code Playgroud)
小智 5
如前所述,使用二进制数据流.Commons io使复制流变得容易.就像是:
InputStream in = getClass().getResourceAsStream("jd-gui.exe");
OutputStream out = new FileOutputStream("jd-gui.exe");
IOUtils.copy(in, out);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1926 次 |
最近记录: |