在 java 中创建给定大小和类型的文件

Create a file of a given size and type in java

我正在使用此代码在 java 中生成给定大小的文件:

File file = new File(basedir, filePath);
file.getParentFile().mkdirs();
RandomAccessFile raf = new RandomAccessFile(file, "rw");
raf.setLength(sizeInBytes);
raf.close();

我正在创建一个 .jar 文件,但是 mime 类型是 text/plain(根据它的魔法 header),我需要文件为 application/java-archive。有什么方法可以让我为这个 RandomAccessFile 设置正确的 header 吗?

终于明白了。 jar 文件的幻数是 (50 4b 03 04) Taken from here

File file = new File(basedir, filePath);
file.getParentFile().mkdirs();
RandomAccessFile raf = new RandomAccessFile(file, "rw");
raf.setLength(sizeInBytes);
byte[] magicHeader = new byte[4];
magicHeader[0] = 0x50;
magicHeader[1] = 0x4b;
magicHeader[2] = 0x03;
magicHeader[3] = 0x04;
raf.write(magicHeader, 0, 4);
raf.close();