这就是我所拥有的:
Main:
buff.clearColor((short)0x00ffff00);
- - - - - -
Buffer:
DataOutputStream dataOutputStream = new DataOutputStream(out);
for (int i : colorBuffer) {
dataOutputStream.writeShort(i);
}
void clearColor(short c)
{
for(int i=0; i<width*height; i++)
{
colorBuffer [i] = c;
}
}
文件中只保存了0x00ffff00的一半, 这一个:ff00
... ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00 ...
最佳答案
writeShort(i)
写入一个简短的对吗?
一个short
只有2个字节......而你需要4个,不是吗?
实际上(short)0x00ffff00
已经剪掉了。使用 int
例如
关于java - 输出流仅保存 16 位的一半,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26254056/