java加载图片
A. java 加载图片的几种方式
第一种方法:
Image bg; //或者是BufferedImage bg;
Pool2(){
try{
String file="图片的路径";
bg =ImageIO.read(new File(file));
}catch(Exception e){
e.printStackTrace();
}
}
第二种方法:这种方法用BufferedReader就不行
Image background;
Pool2(){
try{
String file="文件的路径";
background=Toolkit.getDefaultToolkit().getImage(file);
}catch(Exception e){
e.printStackTrace();
}
}
另外我们有时喜欢把图片放在工程的src目录下这样访问这些图片时就要用下面的方法。以src下的image文件下的01.jpg为例
Image image=null;
image = ImageIO.read(getClass().getResourceAsStream("/image/01.jpg"));
B. 怎样在java里用URL引入图片引入图片
URL对象中前而几个方法都非常容易理解,而该对象提供的openStream()可以读取该 URL资源的InputStream,通过该方法可以非常方便地读取远程资源。
下面的程序示范如何通过URL类读取远程资源:
1)只显示网络图片
1)只显示网络图片
引用图片处理的java类:
packagejun.king.urlgetimage;
importjava.io.InputStream;
importjava.net.URL;
importandroid.app.Activity;
importandroid.graphics.Bitmap;
importandroid.graphics.BitmapFactory;
importandroid.os.Bundle;
importandroid.os.Handler;
importandroid.os.Message;
importandroid.view.Menu;
importandroid.view.MenuItem;
importandroid.widget.ImageView;
{
Bitmapbitmap;
ImageViewimageview;
Handlerhandler=newHandler(){
@Override
publicvoidhandleMessage(Messagemsg){
if(msg.what==0x9527){
//显示从网上下载的图片
imageview.setImageBitmap(bitmap);
}
}
};
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
imageview=(ImageView)findViewById(R.id.imageView1);
//创建并启动一个新线程用于从网络上下载图片
newThread(){
@Override
publicvoidrun(){
try{
//创建一个url对象
URLurl=newURL("http://www..com/img/bdlogo.png");
//打开URL对应的资源输入流
InputStreamis=url.openStream();
//从InputStream流中解析出图片
bitmap=BitmapFactory.decodeStream(is);
//imageview.setImageBitmap(bitmap);
//发送消息,通知UI组件显示图片
handler.sendEmptyMessage(0x9527);
//关闭输入流
is.close();
}catch(Exceptione){
e.printStackTrace();
}
}
}.start();
}
@Override
(Menumenu){
//Inflatethemenu;.
getMenuInflater().inflate(R.menu.main,menu);
returntrue;
}
@Override
(MenuItemitem){
//Handleactionbaritemclickshere.Theactionbarwill
///Upbutton,solong
//.xml.
intid=item.getItemId();
if(id==R.id.action_settings){
returntrue;
}
returnsuper.onOptionsItemSelected(item);
}
}
C. 怎么用java从文件中读取图片和写入图片到文件里
楼下的答案有所欠缺,我这里有个比较完整的,也很简洁的方法,大家参考下import java.awt.Image;
import java.awt.image.BufferedImage;
import java.awt.image.RenderedImage;
import javax.imageio.ImageIO;
import java.io.*;public class image {
public static void main(String []args)throws IOException{
Image[] array = new Image[10];
Image image = ImageIO.read(new File("c:\\supermaket1.jpg"));//这里是你要读取的图像文件
array[0] = image;
ImageIO.write((RenderedImage) image, "png", new File("f:\\test.txt"));//这里是你要写入的文件,如果不存在这个文件,那么系统会自动创建它
}
D. java script加载图片方法
你可以先在需要加载的位置放一张图片,然后隐藏
然后再 refreshMsg 的后面行显示图片就可以
E. java中如何向窗口中加载图片
重写一个JPanel面板,用paint方法把图片画在面板上面,然后将面板添加到JFrame上面就可以了
F. 怎样在java中加载图片(Eclipse环境,相对路径)
加载图片要使用ImageIO,
首先你先使用Class的getResource 将图片文件的输入流获取到,然后传给ImageIO 就可以拿到图片信息了
G. java载入图片只载入图片的一部分,求代码
importjava.awt.Graphics;
importjava.awt.Image;
importjavax.swing.ImageIcon;
importjavax.swing.JFrame;
importjavax.swing.JPanel;
{
publicTestFrame(){
MyJPanelmp=newMyJPanel();
add(mp);
setTitle("画图");
setDefaultCloseOperation(EXIT_ON_CLOSE);
setBounds(300,200,300,300);
setVisible(true);
}
publicstaticvoidmain(String[]args){
newTestFrame();
}
classMyJPanelextendsJPanel{
publicvoidpaint(Graphicsg){
super.paint(g);
Imageimg=newImageIcon("C:\Users\gyona\Desktop\12.jpg").getImage();
g.drawImage(img,0,0,100,100,100,100,200,200,this);
//下面2组参数,确定画在JPanel的什么位置上
//0,0//左上顶点
//100,100//确定画在JPanel时候的长和宽
//下面2组参数,用于决定选取图片的什么区域
//100,100//选取图片的左顶点
//200,200右下顶点
}
}
}
效果
H. java窗口中加载图片
public class TestFrame {
public static void main(String[] args) {
new TestFrame().init();
}
private void init() {
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setBounds(0, 0, 800, 600);
JLabel label = new JLabel();
label.setSize(800, 600);
label.setIcon(new javax.swing.ImageIcon("D:\\Backup\\我的文档\\My Pictures\\20070804115158926.jpg")); // NOI18N
frame.getContentPane().add(label);
frame.setVisible(true);
}
}
label.setIcon(new javax.swing.ImageIcon("D:\\Backup\\我的文档\\My Pictures\\20070804115158926.jpg"));这一大段是图片路径,注意是双斜杠啊。
另外这个问题最麻烦的是怎么读图片,你也可以用ImageIO来读图,详细看下api。
I. JAVA如何用Graphics加载图片
Image i=Toolkit.getDefaultToolkit().getImage("图片路径和名称");
g.drawImage(i, 四个位置参数, this);
J. java 点击按钮在窗口中加载图片
//点击“装在图像” 按钮之后,执行以下语句
JFileChooser chooser = new JFileChooser(); //创建选择文件对象
chooser.setDialogTitle("请选择文件");//设置标题
chooser.setMultiSelectionEnabled(true); //设置只能选择文件
FileNameExtensionFilter filter = new FileNameExtensionFilter("jpg", "jpg");//定义可选择文件类型
chooser.setFileFilter(filter); //设置可选择文件类型
chooser.showOpenDialog(null); //打开选择文件对话框,null可设置为你当前的窗口JFrame或Frame
File file = chooser.getSelectedFile(); //file为用户选择的图片文件
//然后你自己把file用户选择的图片文件替换成你现在的那个文件
//需要引用 import javax.swing.JFileChooser和//import.javax.swing.filechooser.FileNameExtensionFilter两个包