资源简介
使用Java swing 技术读取.raw格式的图片文件并显示
代码片段和文件信息
/**
* @ReadWriteRAW.java
* @Version 1.0 2009.5.18
* @Author Xie-Hua Sun
* Read *.gif *.jpg *.jpeg *.png *.raw *.dat
* Save as *.RAW images
*/
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.awt.image.*;
import java.io.*;
public class ReadWriteRAW extends frame implements ActionListener
{
private MenuItem openItem;
private MenuItem saveItem;
private MenuItem exitItem;
Image image;
int[] pixels;
int width = 256 // (Baboo.raw 512*512 256k)
height = 256;
boolean flag = false; //装载图像标志
//构造方法
public ReadWriteRAW()
{
settitle(“图像载入与存储 保存为RAW文件“);
this.setBackground(Color.lightGray);
//关闭窗口
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
//菜单界面
Menu fileMenu = new Menu(“文件“);
openItem = new MenuItem(“打开“);
openItem.addActionListener(this);
fileMenu.add(openItem);
saveItem = new MenuItem(“保存“);
saveItem.addActionListener(this);
fileMenu.add(saveItem);
exitItem = new MenuItem(“退出“);
exitItem.addActionListener(this);
fileMenu.add(exitItem);
MenuBar menuBar = new MenuBar();
menuBar.add(fileMenu);
setMenuBar(menuBar);
setSize(266 320);
setVisible(true);
}
//调用paint()方法,显示图像信息。
public void paint(Graphics g)
{
if(flag)
g.drawImage(image550this);
}
public void actionPerformed(ActionEvent e)
{
//打开JPG图像
if(e.getSource() == openItem)
{
MediaTracker mt = new MediaTracker(this);
//文件选择对话框
JFileChooser chooser = new JFileChooser();
int r = chooseFile(chooser “.“);
if(r == JFileChooser.APPROVE_OPTION)
{
String name = chooser.getSelectedFile().getAbsolutePath();
//取文件名长度
int len = name.length();
//取文件名的扩展名
String str = name.substring(len-3len);
//若为RAW或DAT文件
if(str.equalsIgnoreCase(“raw“)||str.equalsIgnoreCase(“dat“))
{
JOptionPane.showMessageDialog(null“若RAW图像大小不是64k“+
“需修改widthheight!“ “Alert“
JOptionPane.INFORMATION_MESSAGE);
readRAW(name width height);
}
else
{
image = openImage(name);
}
flag = true;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 65536 2006-05-19 15:35 readRaw\cat.raw
文件 65536 1999-07-08 21:32 readRaw\Lena256.raw
文件 476 2010-03-19 22:09 readRaw\ReadWriteRAW$1.class
文件 846 2010-03-19 22:09 readRaw\ReadWriteRAW$2.class
文件 4958 2010-03-19 22:09 readRaw\ReadWriteRAW.class
文件 6369 2010-03-19 22:09 readRaw\ReadWriteRAW.java
目录 0 2017-01-14 17:07 readRaw
----------- --------- ---------- ----- ----
143721 7
- 上一篇:传教士与野人问题Java实现
- 下一篇:android代理服务设置软件无需root
相关资源
- java 毕业设计 进销存管理系统 源码
- java图片浏览器跨平台运行程序与源码
- 基于java的在线考试系统-毕业设计
- 微博系统(Java源码,servlet+jsp),适
- java串口通信全套完整代码-导入eclip
- jsonarray所必需的6个jar包.rar
- 三角网构TIN生成算法,Java语言实现
- java代码编写将excel数据导入到mysql数据
- Java写的cmm词法分析器源代码及javacc学
- JAVA JSP公司财务管理系统 源代码 论文
- JSP+MYSQL旅行社管理信息系统
- 推荐算法的JAVA实现
- 基于Java的酒店管理系统源码(毕业设
- java-图片识别 图片比较
- android毕业设计
- java23种设计模式+23个实例demo
- java Socket发送/接受报文
- JAVA828436
- java界面美化 提供多套皮肤直接使用
- 在线聊天系统(java代码)
- 基于Java的图书管理系统807185
- java中实现将页面数据导入Excel中
- java 企业销售管理系统
- java做的聊天系统(包括正规课程设计
- Java编写的qq聊天室
- 商店商品管理系统 JAVA写的 有界面
- JAVA开发聊天室程序
- 在linux系统下用java执行系统命令实例
- java期末考试试题两套(答案) 选择(
- JAVA3D编程示例(建模、交互)
川公网安备 51152502000135号
评论
共有 条评论