一个下载图片的例子,为以后铺路。

本文提供了一个使用Java Micro Edition (MIDP) 加载网络图片到移动设备的应用示例。该示例展示了如何在单独的线程中通过HttpConnection从指定URL下载图片,并将其显示在MIDlet界面上。
import java.io.*;

import javax.microedition.io.*;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;

public class HelloMIDlet extends MIDlet implements CommandListener, Runnable {
  
private Display mDisplay;
  
private Form mForm;
  
  
  
public HelloMIDlet() {
    mForm 
= new Form("Connecting...");
    mForm.addCommand(
new Command("Exit", Command.EXIT, 0));
    mForm.setCommandListener(
this);
  }

  
public void startApp() {
    
if (mDisplay == null) mDisplay = Display.getDisplay(this);
    mDisplay.setCurrent(mForm);
    
// Do network loading in a separate thread.      
    Thread t = new Thread(this);
    t.start();
  }

  
public void pauseApp() {}

  
public void destroyApp(boolean unconditional) {}
  
public void commandAction(Command c, Displayable s) {
    
if (c.getCommandType() == Command.EXIT)
      notifyDestroyed();
  }

  
public void run() {
    HttpConnection hc 
= null;
    DataInputStream in 
= null;
    
try {
      String url 
= "http://images.163.com/homepage/logo.gif";
 
      hc 
= (HttpConnection)Connector.open(url);

      
int length = (int)hc.getLength();
      
byte[] data = null;
      
if (length != -1{
        data 
= new byte[length];
        in 
= new DataInputStream(hc.openInputStream());
        in.readFully(data);
      }

      
else {
        
// If content length is not given, read in chunks.
        int chunkSize = 512;
        
int index = 0;
        
int readLength = 0;
        in 
= new DataInputStream(hc.openInputStream());
        data 
= new byte[chunkSize];
        
do {
          
if (data.length < index + chunkSize) {
            
byte[] newData = new byte[index + chunkSize];
            System.arraycopy(data, 
0, newData, 0, data.length);
            data 
= newData;
          }

          readLength 
= in.read(data, index, chunkSize);
          index 
+= readLength;
        }
 while (readLength == chunkSize);
        length 
= index;
      }

      Image image 
= Image.createImage(data, 0, length);
      ImageItem imageItem 
= new ImageItem(null, image, 0null);
      mForm.append(imageItem);
      mForm.setTitle(
"Done");
    }

    
catch (IOException ioe) {
      StringItem stringItem 
= new StringItem(null, ioe.toString());
      mForm.append(stringItem);
      mForm.setTitle(
"Done.");
    }

    
finally {
      
try {
        
if (in != null) in.close();
        
if (hc != null) hc.close();
      }

      
catch (IOException ioe) {}
    }

  }

}
 
 
内容概要:本文围绕列车-轨道-桥梁交互仿真研究,基于Matlab平台构建数值模型,系统分析列车运行过程中轨道与桥梁结构间的动态相互作用机制。研究涵盖多体动力学建模、耦合系统运动方程求解、边界条件设定及仿真结果可视化等关键环节,重点揭示高速行车条件下基础设施的振动传递规律与力学响应特征。该仿真方法可有效评估结构安全性、舒适性指标及疲劳寿命,为轨道交通工程的设计优化与运维管理提供理论支撑和技术路径。文中配套提供了完整的Matlab代码实现方案及操作说明,便于用户复现、验证和拓展相关研究。; 适合人群:具备Matlab编程基础和结构动力学、车辆动力学等相关专业知识的研究生、科研人员及从事铁路工程、桥梁工程与交通系统安全评估的工程技术人才,尤其适合开展轨道交通耦合振动课题的研究者。; 使用场景及目标:①用于高校与科研机构进行列车-轨道-桥梁耦合系统动力学特性的教学演示与科学研究;②支撑高速铁路桥梁的设计优化、运营安全性评估与减振降噪方案验证;③为复杂交通基础设施的多物理场耦合仿真提供建模思路与代码参考。; 阅读建议:建议读者结合所提供的Matlab代码逐模块深入研读,重点关注系统建模假设、质量-刚度-阻尼矩阵构建方法及数值积分算法的实现细节,同时可通过调整参数进行敏感性分析,进一步掌握仿真模型的适用范围与优化方向。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值