`
daweiyuan
  • 浏览: 20239 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

J2Me学习输入流--InputStream

UP 
阅读更多
Java InputStream API
Method Summary
int available()
          Returns the number of bytes that can be read (or skipped over) from this input stream without blocking by the next caller of a method for this input stream.
void close()
          Closes this input stream and releases any system resources associated with the stream.
void mark(int readlimit)
          Marks the current position in this input stream.
boolean markSupported()
          Tests if this input stream supports the mark and reset methods.
abstract  int read()
          Reads the next byte of data from the input stream.
int read(byte[] b)
          Reads some number of bytes from the input stream and stores them into the buffer array b.
int read(byte[] b, int off, int len)
          Reads up to len bytes of data from the input stream into an array of bytes.
void reset()
          Repositions this stream to the position at the time the mark method was last called on this input stream.
long skip(long n)
          Skips over and discards n bytes of data from this input stream.


Java  InputStream  的mark 和reset操作
mark用于标记当前位置;在读取一定数量的数据(小于readlimit的数据)后使用reset可以回到mark标记的位置。
FileInputStream不支持mark/reset操作;BufferedInputStream支持此操作;

mark(readlimit)的含义是在当前位置作一个标记,制定可以重新读取的最大字节数,也就是说你如果标记后读取的字节数大于readlimit,你就再也回不到回来的位置了。

通常InputStream的read()返回-1后,说明到达文件尾,不能再读取。除非使用了mark/reset
分享到:
评论

相关推荐

    J2ME中文教程J2ME开发下载.

    Java Micro Edition(J2ME)是Java平台的一个子集,主要设计用于资源有限的设备,如移动电话、智能手表和嵌入式系统。...同时,提供的J2ME中文教程J2ME开发下载PDF文档将作为学习资料,便于读者随时查阅和学习。

    J2ME学习——如何播放声音

    首先,你需要获取到声音文件的输入流。这通常通过 `getClass().getResourceAsStream()` 方法完成,该方法可以读取类路径(classpath)下的资源。例如,假设有一个名为 "Autorun.wav" 的文件存放在JAR文件的根目录下...

    J2ME入门-(6)CLDCAPI.doc

    这些类允许开发者从不同类型的输入流中读取数据,并将其转换为Java的数据类型。值得注意的是,某些类可能不包含J2SE中的所有方法,例如浮点数值相关的操作,以适应低资源环境。 至于Java.util包,虽然在CLDC中没有...

    j2me框架_用J2ME的通用联网框架开发联网.pdf

    如果成功,我们读取输入流,处理响应内容的类型和数据。 `HttpConnection`类提供了设置请求方法(如GET、POST、PUT等)和请求头的方法,以及获取响应码、类型和长度的接口。注意,`getResponseCode()`方法会实际...

    j2me socket编程

    2. 获取输入流和输出流对象,然后就可以通过这些流进行数据传输。 ### 3. 数据传输 - **读取数据**:使用 `InputStream` 对象读取来自服务器的数据。可以使用 `read()` 或 `readBytes()` 方法。 - **写入数据**:...

    J2ME_中文API

    - **InputStream**: 输入流的基类。 - **OutputStream**: 输出流的基类。 - **InputStreamReader**: 将字节流转换为字符流。 - **OutputStreamWriter**: 将字符流转换为字节流。 ##### 5. GUI组件 - **Canvas**: ...

    j2me收發短信.rar_bluetooth chat_j2me_j2me sms_sms_短信 j2me

    通常,需要一个线程持续监听输入流,另一个线程负责发送数据,确保聊天的实时性。 三、示例程序分析 "收发短信"文件可能是实现上述功能的源代码示例。开发者可能已经封装了短信收发和蓝牙聊天的相关类,通过解析...

    J2ME里面的线程和网络

    6. **流处理**:在读写网络数据时,通常会用到InputStream和OutputStream,它们提供了读取和写入字节流的接口。 7. **异步网络操作**:为避免阻塞主线程,J2ME鼓励使用回调或事件驱动的方式处理网络请求,如使用...

    j2me http通信demo

    `openInputStream()`方法打开与服务器的连接并返回输入流,你可以从中读取响应数据。 对于POST请求,你需要设置请求头和正文内容: ```java httpConn.setRequestMethod(HttpConnection.POST); OutputStream os = ...

    J2ME文件系统开发实例

    - 打开文件连接,然后获取输入流 `InputStream`。 - 使用 `InputStream.read()` 或 `DataInputStream` 读取数据,记得每次读取后检查 EOF(End Of File)。 - 读取完成后,记得关闭输入流。 **文件写入**: - 打开...

    j2me zip 压缩及解压,不支持gzip格式

    4. 将`ZipEntry`写入`ZipOutputStream`,然后打开该文件的输入流。 5. 使用`java.io.InputStream`和`java.io.OutputStream`读取源文件并写入`ZipOutputStream`,实现文件内容的压缩。 6. 关闭所有打开的流。 解压缩...

    file_j2me.rar_j2me_j2me 文件_读写文件

    2. 获取输入流(InputStream)以读取数据: ```java InputStream in = connection.openInputStream(); ``` 3. 使用 `InputStream` 的方法如 `read()` 或 `readBytes()` 读取数据。 4. 完成读取后,关闭输入流和连接...

    JAVA基于J2ME的手机游戏开发(论文+源代码).rar

    - 使用连接管理器(ConnectionManager)和流I/O(InputStream/OutputStream)进行网络通信。 6. **资源管理**: - 在资源有限的移动设备上,有效的资源管理至关重要,包括内存管理和图形资源的优化。 - 使用预...

    j2me手机编程读取txt文档

    3. **获取输入流** 要读取文件,首先需要获取到文件的InputStream。在J2ME中,这通常是通过` MIDlet `类的` getStream `方法或者` RMS (Record Management System)`来实现。对于资源文件,我们可以使用` ...

    J2ME试题(javaEE)

    学习如何使用Connector类和InputStream/OutputStream进行数据交换,以及如何处理网络连接的异步性质。 4. **存储管理**:由于资源有限,J2ME通常使用RecordStore进行本地数据存储。理解RecordStore的API,包括如何...

    J2ME中文API(自己翻译的)初学者用

    5. **InputStream/OutputStream**家族:如ByteArrayInputStream和ByteArrayOutputStream,用于处理字节流数据的读写。 6. **Calendar**:用于处理日期和时间,提供了创建、修改和查询日历对象的能力。 7. **Canvas...

    j2me浏览器源码

    根据提供的文件信息,我们可以深入分析J2ME浏览器源码中的关键知识点。...这对于学习J2ME开发和理解其工作原理非常有帮助。此外,通过对这些API的深入理解,开发者可以更有效地利用J2ME来创建丰富的移动应用程序。

    j2me socket方式下载图片

    下一步是获取Socket的输入流(InputStream)和输出流(OutputStream)。输入流用于接收服务器返回的数据,输出流则用于发送请求到服务器。 ```java InputStream in = socketConnection.openInputStream(); ...

Global site tag (gtag.js) - Google Analytics