文件的保存 队列 山寨BMP

                              文件的保存

我们在画图板上的所画的图形,是放在内存中的,就是说当我们把eclipse关掉时,我们花的图形会消失,因此我们需要把图形保存到文件中(放在外存中),那样就不丢失了。我们要用到的是基本文件输出与输入流的类即DataOutputStreamDataInputStream

他们有一个构造方法,就是DataOutputStream(OutputStream out)DataInputStream(InputStream in)参数就是文件输入流(FileInputStream)和文件输出流(FileOutputStream)的对象。就把文件流包装成文件基本数据流。

   这样我们就可以把我们的数据写到文件中了,在计算机中数据全是0 1 代码,或者说数字,我们保存文件的方法就是,把输出流中的数据以基本数据的类型保存起来,然后当我们再读文件的时候,就必须以相同的顺序,相同的方式读出来。

在画图板重绘时,我们用的是对列,我们现在也可以用队列来保存,首先我们存放的是形状的个数,即队列的大小;然后就是形状的类型,然后才是形状的属性。读的方法也一样。用队列来存储图形时,如果我们花的图形较多,那么无论还是写的时候都很耗费时间,如果形状的类型很多时,我们的代码也会增多。如果遇到我们未知或者不可描述的形状时,我们会一筹莫展。

 另一种方法是,采用保存像素的方法。就是把一个图上面的每一个像素点保存起来,这样的话,保存的效率就只会和我们的画板的大小有关了,和我们所画的图形的形状 ,个数,没有关系了。这也就解决了上一种方法的弊端。

在这两种方法中我们会遇到一个问题就是,颜色怎样保存。颜色肯定是可以转化成数据的,而转换成数据的方法就是,在java.awt.imageBufferedImage包的下面有getRGB intint)就是将某一位置的颜色 转换成数据,Color color = new Color(m)

就是 将数据转化为颜色的方法。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值