⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 imagehttp.java

📁 J2EE的无线手机通讯运用软件
💻 JAVA
字号:
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import java.util.Vector;
import java.io.IOException;
import java.io.DataInputStream;
import javax.microedition.io.HttpConnection;
import javax.microedition.io.ContentConnection;
import javax.microedition.io.Connector;
import javax.microedition.rms.*;
import java.util.Vector;
import java.io.*;
import javax.microedition.io.*;

public class ImageHttp extends MIDlet implements CommandListener{
  Display display=null;
  static final String rsName="mypicture";
  static final Command downCmd=new Command("下载",Command.SCREEN,1);
  static final Command viewCmd=new Command("查看",Command.SCREEN,1);
  static final Command deleteCmd=new Command("删除",Command.SCREEN,1);
  static final Command deleteAllCmd=new Command("删除全部",Command.SCREEN,1);
  static final Command exitCmd=new Command("退出",Command.SCREEN,1);
  static final Command returnCmd=new Command("返回",Command.SCREEN,1);
  
  TextField uriField=new TextField("图象地址","",100,TextField.URL);
  TextField nameField=new TextField("保存名称","",15,TextField.ANY);
  String uri;
  String[] picNames;
  String picName;
  Image listIcon;
  Image[] listIcons;
  RecordStore rs;
  List viewList;
  Form downloadForm;
  public ImageHttp(){
    try{
        listIcon=Image.createImage("/wap.png");
       }catch(Exception e){}
       display=Display.getDisplay(this);
    }
   public void startApp(){
      getPicNames();
      viewList=new List("浏览下载图片",List.IMPLICIT,picNames,listIcons);
      viewList.addCommand(downCmd);
      viewList.addCommand(viewCmd);
      viewList.addCommand(deleteCmd);
      viewList.addCommand(deleteAllCmd);
      viewList.addCommand(exitCmd);
      viewList.setCommandListener(this);

      downloadForm=new Form("下载图片");
      downloadForm.append(uriField);
      downloadForm.append(nameField);
      downloadForm.addCommand(downCmd);
      downloadForm.addCommand(returnCmd);
      downloadForm.setCommandListener(this);
      display.setCurrent(viewList);
   }
   public void pauseApp(){}
   public void destroyApp(boolean unconditional){}

   public void getPicNames(){
      try{
          rs=RecordStore.openRecordStore(rsName,true);
          int numOfPic=rs.getNumRecords()/2;
          picNames=new String[numOfPic];
          listIcons=new Image[numOfPic];
          for(int i=0;i<numOfPic;i++){
             picNames[i]=new String(rs.getRecord(2*i+1));
             listIcons[i]=listIcon;
          }
       }catch(Exception e){}
   }
   public void viewImage(int n){
      try{
          byte[] imageBytes=rs.getRecord(2*(n+1));
          Image image=Image.createImage(imageBytes,0,imageBytes.length);
          Alert alert=new Alert(picNames[n],null,image,AlertType.INFO);
          alert.setTimeout(Alert.FOREVER);
          display.setCurrent(alert,viewList);
        }catch(Exception e){
          Alert alert=new Alert(picNames[n],"读取图象时发生错误,请重新下载!",null,AlertType.INFO);
          alert.setTimeout(Alert.FOREVER);
          display.setCurrent(alert,viewList);
          }
   }
   public void deletePic(int n){
      Alert alert=new Alert("发生错误","此功能还未完成,请读者实现!",null,AlertType.ERROR);
       alert.setTimeout(Alert.FOREVER);
       display.setCurrent(alert,viewList);
   }
   public void deleteAll(){
      while(true){
          try{
              rs.closeRecordStore();
          }catch(RecordStoreNotOpenException e){
            break;
          }catch(RecordStoreException e){}
         
          }
       try{
          RecordStore.deleteRecordStore(rsName);
          rs=RecordStore.openRecordStore(rsName,true);
          picNames=null;
          int nums=viewList.size();
          while(nums-->0){
             viewList.delete(nums);
          }
        }catch(Exception e){}
    }
    public void startDownload(){
       uri=uriField.getString();
       picName=nameField.getString();
       if(uri==null|picName==null|uri.equals("")|picName.equals("")){
          Alert alert=new Alert("发生错误","URL或保存图象名不能为空!",null,AlertType.ERROR);
          alert.setTimeout(Alert.FOREVER);
          display.setCurrent(alert,downloadForm);
       }else{
          Thread downloadThread=new ImageThread(this,uri,picName);
          downloadThread.start();
       }
     }
     public void commandAction(Command c,Displayable d){
       if(c==exitCmd){
           destroyApp(true);
           notifyDestroyed();
       }else if(c==returnCmd){
           display.setCurrent(viewList);
       }else if(c==deleteAllCmd){
           deleteAll();
       }else if(c==deleteCmd){
           deletePic(viewList.getSelectedIndex());
       }else if(c==downCmd){
           if(d==viewList){
               display.setCurrent(downloadForm);
           }else{
                startDownload();
           }
       }else if(c==List.SELECT_COMMAND|c==viewCmd){
           viewImage(viewList.getSelectedIndex());
      }
     }
}
       

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -