PNG画像内に保持するカスタムファイル画像形式を作成したいと思います。私はどうすればそれができるかを調査してきましたが、どこから始めればよいのかわかりません。カスタムファイル形式を次のように定義します。-最初のバイトには形式バージョンが含まれます-次の2バイトにはファイルが保持するファイルの数が含まれます-残りのファイルの内容は次々にコピーされたpngファイルです
ファイルを読み取るためにストリームを使用できますが、ImageIOが完全なストリームを読み取るため、各pngをBufferedImageに変換する方法がわかりません。これはすべて私が持ってきたものです:
public static void main(String[] args) throws IOException {
DataInputStream input = new DataInputStream(new FileInputStream("C:\\a.spr"));
byte version = input.readByte();
short imagenum = input.readShort();
System.out.printf("version:%s\nimagenum:%s",version,imagenum);
BufferedImage[] images = new BufferedImage[imagenum];
for(int i=0;i<imagenum;i++)
{
BufferedImage img; //TODO: Read the image
images[i] = img;
}
}