import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.RandomAccessFile;public class Demo04 {
 public static void main(String[] args){
 //图片变亮变暗,使用缓冲数组//注意如果想要实现上面的三个效果,依次把注释去掉就可以了,为了不起冲突,最好只保留一个不
//注释的代码
  test();
 }
 private static void test(){
  File file=new//此处是你的图片的路径,同时注意一点,格式要是.bmp,否则效果可能不好,想该图片的格式,可以用电脑自带的画图工具。
  File("F:\\电脑壁纸\\1.bmp");
  try {
   RandomAccessFile raf=new RandomAccessFile(file,"rw");
   raf.seek(54);
   byte[] buf=new byte[1024*8];
   int n=0;
   while((n=raf.read(buf))!=-1){
    for (int i = 0; i < buf.length; i++) {
     int b=buf[i]&0xff;
//     //变亮
//     b+=100;
//     if(b>255){
//      b=255;
//     }
//     //变暗
//     b-=100;
//     if(b<0){
//      b=0;
//     }
     //反色
     b=255-b;
     
     buf[i]=(byte)b; 
    }
    
    //指针复位
    raf.seek(raf.getFilePointer()-n);
    raf.write(buf, 0, n);
   }
   raf.close();
   System.out.println("修改完毕!");
  } catch (FileNotFoundException e) {
   e.printStackTrace();
  }catch(IOException e){
   e.printStackTrace();
  }
 }
 
}