读取bmp文件到BufferedImage中

File file2 = new File("c:\\testimages\\tttt" + ".bmp");
// BufferedImage bi
= backstore.getBufferedImage();
try {
    output = ImageIO.read(file2);
} catch
(IOException e) {
    e.printStackTrace();
}

输出bmp文件

File file2 = new File("c:\\testimages\\tttt" + 
".bmp");
ImageIO.write(bi, "bmp", file2);
Byte[]输出到文件

   byte[] buf =UtilZip.zipObjectToByte(cache);
   File file2 = new File("c:\\testimages\\cache.bin");
   FileOutputStream fos =new FileOutputStream(file2);
   fos.write(buf);
   fos.flush();
   fos.close();

读文件到Byte[]中

File file2 = new File("c:\\testimages\\cache.bin");
    FileInputStream fis = new FileInputStream(file2);
    byte[]
buf =
new byte[(int) file2.length()];
    fis.read(buf);
    fis.close();
填充颜色到整个画布

    BufferedImage bi = backstore.getBufferedImage();
Graphics g2 = bi.getGraphics();
g2.setColor(Color.red);
g2.fillRect(0, 0, Common.width,
                 
Common.height);

图像变灰操作

    public finalBufferedImage getGrayPicture(BufferedImage originalPic) { 

       
int imageWidth =
originalPic.getWidth(); 
       
int imageHeight =
originalPic.getHeight(); 
 
       
BufferedImage newPic
= new BufferedImage(imageWidth, imageHeight, 
               
BufferedImage.TYPE_3BYTE_BGR); 
 
       
ColorConvertOp cco = new
ColorConvertOp(ColorSpace 
               
.getInstance(ColorSpace.CS_GRAY),
null); 
       
cco.filter(originalPic,
newPic); 
       
return newPic; 
    }

ImageIO
javax.imageio.ImageIO lets you save and
restore Images to disk in a platform independent format. It works using plug-in
modules that handle various formats including "gif", "png" and "jpeg" (all lower
case, or all upper case, but not mixed). "jpeg" or "jpg" is acceptable. Use
ImageIO. getWriterFormatNames() to find out which types are supported on your
platform:

import javax.imageio.ImageIO;

public class
Jai
   {
  
   public static void main ( String[]
args )
     
{
     
String[] names = ImageIO.getWriterFormatNames();
      for ( String
name: names )
       
 {
        
System.out.println( name );
        
}
     
}
  }

Saving an Image to raw bytes
// BufferedImage to raw bytes
import
javax.imageio.ImageIO;
import
java.awt.image.BufferedImage;
import
java.io.ByteArrayOutputStream;
...

//
O P E N
ByteArrayOutputStream baos
= new ByteArrayOutputStream(
1000 );

// W R
I T
E
ImageIO.write(
aBufferedImage, "jpeg"
,
          
baos );

// C L O S
E
baos.flush();
byte[]
resultImageAsRawBytes =
baos.toByteArray();

baos.close();

Loading
a BufferedImage from a file
// file to
BufferedImage
import
java.awt.image.
BufferedImage;
import
java.io.File;
import
javax.imageio.ImageIO;
...
BufferedImage
image =
ImageIO.read(
new File( "rabbit.jpg"
) );
Saving a BufferedImage to a
file
// BufferedImage to File
import
javax.imageio.ImageIO;
import
java.awt.image.BufferedImage;
import
java.io.File;
...
ImageIO.write(
aBufferedImage, "jpeg"
,
              
new File ( "snap.jpg"
)
);

ImageWriteParam is a way of
controlling exactly how the image in encoded. There is currently no PNG support
for it. This is not for injecting meta info.
Loading a
BufferedImage from an URL
// url to
BufferedImage
import
java.awt.image.BufferedImage;
import
javax.imageio.ImageIO;
...
BufferedImage
image =
null;
try
   {
   image =
ImageIO.read(
url );
  
}
catch ( IOException
e )
   {
  
System.out.println(
"image missing" );
  
}

Converting Image to BufferedImage
// Image to
BufferedImage
import
java.awt.image.BufferedImage;
import
java.awt.Image;
...
BufferedImage
bufferedImage = new
BufferedImage (
imageWidth,
                                                 
imageHeight,
                          
                       BufferedImage.TYPE_INT_BGR 
);
bufferedImage.createGraphics().drawImage(
image, 0,
0, this
);

Java图像文件的读写的更多相关文章

  1. JAVA用geotools读写shape格式文件

    转自:http://toplchx.iteye.com/blog/1335007 JAVA用geotools读写shape格式文件 (对应geotools版本:2.7.2) (后面添加对应geotoo ...

  2. java文件的读写操作

    java文件的读写操作主要是对输入流和输出流的操作,由于流的分类很多,所以概念很容易模糊,基于此,对于流的读写操作做一个小结. 1.根据数据的流向来分: 输出流:是用来写数据的,是由程序(内存)--- ...

  3. java通过dom读写xml文件

    java通过dom读写xml文件 要读的xml文件 <?xml version="1.0" encoding="GB2312"?><学生花名册 ...

  4. java FileReader/FileWriter读写文件

    java FileReader/FileWriter读写字母和数字没问题,但读写汉字就乱码.记录下,后面找到解决方法再补上. public static void main(String[] args ...

  5. Java中如何读写cookie (二)

    Java中删除cookie Cookie[]   cookies=request.getCookies();       //cookies不为空,则清除       if(cookies!=null ...

  6. 沉淀再出发:java的文件读写

    沉淀再出发:java的文件读写 一.前言 对于java的文件读写是我们必须使用的一项基本技能,因此了解其中的原理,字节流和字符流的本质有着重要的意义. 二.java中的I/O操作 2.1.文件读写的本 ...

  7. java 文件的读写操作

    java  文件的读写操作 一.读: public String getSetting() { HttpServletRequest request=org.apache.struts2.Servle ...

  8. 《手把手教你》系列技巧篇(六十六)-java+ selenium自动化测试 - 读写excel文件 - 上篇(详细教程)

    1.简介 在自动化测试,有些我们的测试数据是放到excel文件中,尤其是在做数据驱动测试的时候,所以需要懂得如何操作获取excel内的内容.由于java不像python那样有直接操作Excle文件的类 ...

  9. 《手把手教你》系列技巧篇(六十七)-java+ selenium自动化测试 - 读写excel文件 - 中篇(详细教程)

    1.简介 前面介绍了POI可以操作excel,也简单的提到另一个操作excle的工具,本篇介绍一个其他的可以操作excel的工具,但是这个工具有一个前提,excel文件版本只能是97-2003版本,如 ...

随机推荐

  1. Android笔记:Socket通讯常见问题

    经验证的socket通讯问题 1.如果是模拟器和本机PC直接通讯,需要使用本机IP地址 而不是 10.0.2.2  如本机的静态地址为192.168.1.2 则直接使用该地址 2.接收和连接代码不能在 ...

  2. Selenium2学习-012-WebUI自动化实战实例-010-解决元素失效:StaleElementReferenceException: stale element reference: element is not attached to the page document

    元素失效的想象提示信息如下图所示,此种问题通常是因为元素页面刷新之后,为重新获取元素导致的. 解决此类问题比较简单,只需要在页面刷新之后,重新获取一下元素,就可以消除此种错误了. 以下以易迅网搜索为例 ...

  3. MVC中”从客户端检测到有潜在危险的Request.Form值“的解决方法

    从客户端检测到有潜在危险的Request.Form值: 在webForm中,可以在aspx页面顶部 <%@ Page Language="C#" AutoEventWireu ...

  4. notepad++的环境变量

    notepad++的环境变量:当前目录:$(CURRENT_DIRECTORY) cmd /k cd /d $(CURRENT_DIRECTORY)文件名:$(NAME_PART)路径名:$(CURR ...

  5. E: 软件包*需要重新安装,但是我无法找到相应的安装文件。(ubuntu14.04)

    ubuntu安装搜狗输入法官方下载的安装包时,电脑有点卡我给强制关闭了,然后重启打开软件管理中心,直接闪退! 之后不能安装任何软件(包括命令). 显示: E: 软件包Sougou Pinyin需要重新 ...

  6. Android:学习AIDL,这一篇文章就够了(下)

    前言 上一篇博文介绍了关于AIDL是什么,为什么我们需要AIDL,AIDL的语法以及如何使用AIDL等方面的知识,这一篇博文将顺着上一篇的思路往下走,接着介绍关于AIDL的一些更加深入的知识.强烈建议 ...

  7. checkbox的完美用户体验(转)

    如需查看效果-->自行建个html文件,或者-->原文:http://bbs.blueidea.com/thread-2711834-1-7.html 最常见的checkbox的使用: & ...

  8. iOS - (集成支付宝SDK大坑总结)

    其实集成支付宝相对于集成微信支付来说,支付宝算是简单的了,后续有空再去研究微信支付,现目前先总结一下集成支付宝所遇到的坑,其实支付宝的坑也不算太多,细算下来大概5-6个左右,但是其报错方式有点恶心,不 ...

  9. Perforce 使用笔记

    Perforce requires at least two executables: the server (p4d), and at least one Perforce client progr ...

  10. 统计哪些程序占用了swap

    命令如下 : for i in `cd /proc;ls |grep "^[0-9]"|awk ' $0 >100'` ;do awk '/Swap:/{a=a+$2}END ...