0

jarファイルに他のリソースを含む.exeをパックしており、次のコードで抽出します。

InputStream program=getClass().getResourceAsStream("/program.exe");
try {
    FileOutputStream output=new FileOutputStream("C:\\Users\\Aitor\\Desktop\\program.exe");
    int b;
    while ((b=program.read())!=1)
    {
        output.write(b);
    }
    output.close();
} catch (IOException e) {
    e.printStackTrace();
}

しかし、生成されたexeを実行しようとすると、そのアーカイブのバージョンが使用しているWindowsのバージョンと互換性がないというエラーが表示されます。破損せずにjarファイルからexeファイルを抽出するにはどうすればよいですか?

4

1 に答える 1

1

ファイルの読み取りと書き込みをより高速に行う方法を使用します。

FileOutputStream output=new FileOutputStream("C:\\Users\\Aitor\\Desktop\\program.exe");
int b = 0;
byte[] buff = new byte[1024];
while ((b=program.read(buff))>=0)
{
    output.write(buff, 0, b);
}
output.close();
于 2012-10-04T16:45:41.837 に答える