动态网站制作指南
[  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
电脑书籍下载:程序设计书籍 | 数据库教程书籍 | 平面与多媒体书籍 | 网络通讯书籍 | 系统管理书籍 | 网络安全书籍 | 认证考试书籍
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Java教程 ]的信息

本月文章推荐
.小议如何在Application中显示图象.
.Maven 专题之一.
.NLpack-eclipse-SDK-3.0.x-win32.
.Java资料:Swing中的事件处理详细.
.Servlet 技术.
.Java特效生成器──Anfy Java.
.Struts Validator的使用.
.Eclipse主要插件Lomboz介绍(4)_C.
.垃圾自动收集系统指导(2).
.关于构建一个使用EJB组件的新系统.
.FlashLite与J2ME的全方位分析比较.
.Java 开发环境的过去、现在和将来.
.Java编程技术中汉字问题的分析及.
.浏览器中运行Java applet时出现了.
.Java中引用变量的使用.
.MIDP1.0游戏完整实现-双人扫雷1..
.为Web应用建立基于JMX的管理系统.
.浅析Java语言中两种异常使用的差.
.java 中protected modifier 使用.
.SUN公司操作系统的发展战略.

Java入门笔记7_Stream

文章类别:Java教程 | 发表日期:2008-1-5 |



  1. Streams及I/O
Stream就是信息源与目的地之间的通信路径,这里的信息源可以是文件、内存、网络等。Streams主要分为input及output Stream。

1.1 InputStream类
类InputStream处于Input stream类层次的最顶层,它主要具有以下几种方法:

1.1.1 read方法
read方法用于从指定的输入流读取以字节为单位的数据,第一次从流的开始位置开始读取,以后每次从上次的结束部位开始读取,即自动实现了位移。

read方法有以下三种形态:

(1) int read(byte buff[n]):从指定输入流中读取n个字节填充到buff中,该方法返回读取的实际字节数,假如读取的实际字节数小于n,一般是因为已读到指定输入流的末尾;

(2) int read():即不带参数,该方法每次一个字节从指定的输入流中读取数据。返回值也是int类型,但它并不代表读取的字节数,而是从流中读取的数据的本身,因数据本身是byte类型的,所以一般要强制进行转化;假如读到流的末尾返回的值是-1;

(3) int read(byte buff[n],int start, int len):从指定流读取数据,从start开始,填充len个字节到buff中,返回值为实际的填充数,假如返回值<len,一般表示已将指定流中的数据读完;

以下是read的简单例子:

import Java.io.*;

class TestIO1{

public static void main(String args[]) {

InputStream s = null;

try{

s = new FileInputStream("io.txt");

}catch(FileNotFoundException e){

System.out.println("file not find");

}



int i;

try{

i = s.read();

while(i != -1){

System.out.println((char)i);

i = s.read();

}

}catch(IOException e){

System.out.println("io error");

} } }

1.1.2 skip方法
skip方法类似于C语言中的lseek都是用于定位的。Skip方法定义:long skip(long n),该方法使指定流中的当前位置移动n个字节,n的值可以是负值用于向前移,skip方法返回值为实际移动的字节数,由于种种原因,如已到流尾或者其它原因返回的值往往小于n。对于读取文件来说,小于n的原因最大的原因是读到了文件尾。

1.1.3 available方法
available方法用于计算指定流中当前有多少字节,假如指定的流是文件流,那么就返回文件的大小。Available返回的值是int类型。

有的输入流可能没有能力返回字节数,假如对这些输入流使用avaiable方法,返回值为0。

1.1.4 close方法
对于打开的stream,Java可以自动回收,但是Java自动回收需要时间,所以最好自己调用close方法来关闭stream,这样方便下一次重新指定的流。

1.2 ByteArrayInputStream
ByteArrayInputStream是从InputStream中继续下来的,用于从字节数组中提取数据,关于ByteArrayInputStream的创建例子如下:

byte[] buffer = new byte[1024];

fillWithUsefulData(buffer); //自定义的方法,用于在buffer中填充数据

InputStream s = new ByteArrayInputStream(buffer);

InputStream s1 = new ByteArrayInputStream(buffer,100,300);

其中ByteArrayInputStream(buffer,100,300)是创建到buffer的stream,从buffer的第100个字节开始取300字节。

ByteArrayInputStream的其它方法与InputStream类似,这里不再重复。

1.3 FileInputStream
FileInputStream也是从InputStream中继续下来的,用于从指定的文件中提取。因此它的方法也与InputStream中的方法类似,这里不再介绍,只介绍FileInputStream中非凡的方法:getFD(),该方法用于获取文件句柄。使用方法如下:

FileInputStream aFIS = new FileInputStream("aFileName");

上一篇:Java入门笔记8_JavaTools 人气:250
下一篇:Java入门笔记5_异常 人气:267
点击此处浏览全部Java的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-5-16 乘风多用户PHP统计系统 v3.4
2008-5-16 轩溪下载系统 v3.78 build 0515
2008-5-16 普沙B2B 浙江省商贸网 v2.0
2008-5-16 asp抓蜘蛛的小程序 v1.0
2008-5-16 齐齐乐网私服发布站 仿haosf新版
2008-5-16 IssTech信息反馈系统 v1.0
2008-5-16 自由领域大头贴(js接口版) 修正版
2008-5-16 医院网站系统
2008-5-16 智拓-分类信息管理系统 v5.0
2008-5-7 Windows XP SP3 官方英文版
2008-5-7 Windows XP SP3 官方香港中文版
2008-5-7 Windows XP SP3 官方繁体中文版
2008-5-7 Windows XP SP3 官方简体中文版
2008-4-30 Multiple Unzip Wizard 1.02
2008-4-30 Multiple Unrar Wizard 1.0.0
2008-4-30 WinZip Install/Try/Uninstall a
2008-4-30 ZIP压缩文件修复器WzipFix 2.0
2008-4-30 Pentazip 6.01 Build 189 For Wi
  发表评论
姓 名: 验证码: [ 全部贴吧 ] [ 浏览评论 ]
内 容:
[ 汉字翻译拼音 ] [ 广告代码 ] [ 符号对照表 ] [ 进制转换 ] [ 经典小工具 ] [ 个税计算 ] [ 汉字简繁转换 ] [ 普通单位换算 ] [ 公制单位换算 ]
[ 生辰老黄历 ] [ 国内电话区号 ] [ 国家代码与域名缩写 ] [ 文字加密解密 ] [ 健康查询 ] [ 万年历 ] [ 手机号码查询 ] [ ip搜索 ] [ Google PR查询 ]
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報