在java中将.bmp图像存储为位图数组
到目前为止,我有以下读取30x40像素.bmp文件的代码:在java中将.bmp图像存储为位图数组,java,file-io,bitmap,Java,File Io,Bitmap,到目前为止,我有以下读取30x40像素.bmp文件的代码: public void setUp() throws IOException { BufferedImage image = ImageIO.read(getClass().getResource("circle1.bmp")); greenInputData = new byte[30][40]; for (int x = 0; x < greenInputData.length; x+
public void setUp() throws IOException
{
BufferedImage image =
ImageIO.read(getClass().getResource("circle1.bmp"));
greenInputData = new byte[30][40];
for (int x = 0; x < greenInputData.length; x++)
{
for (int y = 0; y < greenInputData[x].length; y++)
{
int color = image.getRGB(x, y);
greenInputData[x][y] = (byte)(color >> 8);
}
}
System.out.println(greenInputData);
}
public void setUp()引发IOException
{
缓冲图像=
read(getClass().getResource(“circle1.bmp”);
greenInputData=新字节[30][40];
对于(int x=0;x>8);
}
}
System.out.println(绿色输入数据);
}
当我调用System.out.println(greenInputData)时,控制台立即提供以下信息:
[[B@1c8a1c9d
[[B@1cb4ee66
[[B@262580b3
[[B@450a3962
[[B@5d7138f4
[[B@44443799
[[B@5220c1b
[[B@52c4d93
[[B@3eaa2c1c
[[B@2b3fc0bb
[[B@4b8b7245
[[B@2623592
[[B@e689490
[[B@3849ca75
[[B@ebe5687
[[B@671ef55c
[[B@68c6fc84
[[B@53dc5341
但我希望能够看到正在读取的图像的数组打印输出。例如,如果我读取一个圆的位图,我希望能够System.out.println()输出一个30x40位图数组,如下所示:
<---------30---------------->
000000000000000000000000000000 ^
000000111110000000000000000000 |
000001111111100000000000000000 |
000011111111110000000000000000 |
000011111111110000000000000000 40
000001111111100000000000000000 |
000000011110000000000000000000 |
000000000000000000000000000000 |
000000000000000000000000000000 |
.
.
.
000000000000000000000000000000 ^
000000111110000000000000000000 |
000001111111100000000000000000 |
000011111111110000000000000000 |
000011111111110000000000000000 40
000001111111100000000000000000 |
000000011110000000000000000000 |
000000000000000000000000000000 |
000000000000000000000000000000 |
.
.
.
提示:
您正在形成greenInputData
对吗
问题在于您显示它的方式
提示:它是一个二维数组
greenInputData
是一个二维数组。您需要循环遍历每个级别并分别显示其值