java 文件io 实验_java读写文件_IO

java读写文件_IO

使用Java操作文本文件的方法详解

摘要: 最初java是不支持对文本文件的处理的,为了弥补这个缺憾而引入了Reader和Writer两个类

最初java是不支持对文本文件的处理的,为了弥补这个缺憾而引入了Reader和Writer两个类,这两个类都是抽象类,Writer中 write(char[] ch,int off,int length),flush()和close()方法为抽象方法,Reader中read(char[] ch,int off,int length)和close()方法是抽象方法。子类应该分别实现他们。

当我们读写文本文件的时候,采用Reader是非常方便的,比如FileReader,InputStreamReader和BufferedReader。其中最重要的类是InputStreamReader,它是字节转换为字符的桥梁。你可以在构造器重指定编码的方式,如果不指定的话将采用底层操作系统的默认编码方式,例如GBK(咱们的中文windows默认)等。当使用FileReader读取文件的时候。

就好像一根管子插进去开始读数据或者写数据,这是字节流(Input/Output StreamReader),管子外面再套跟管子转换为字符流,读取更为方便。

FileReader fr = new FileReader("ming.txt");

int ch = 0;

while((ch = fr.read()) != -1 ){

System.out.print((char)ch);

}

其中read()方法返回的是读取得下个字符。当然你也可以使用read(char[] ch,int off,int length)这和处理二进制文件的时候类似,不多说了。如果使用InputStreamReader来读取文件的时候

while((ch = isr.read())!=-1){

System.out.print((char)ch);

}

这和FileReader并没有什么区别,事实上在FileReader中的方法都是从InputStreamReader中继承过来的。read()方法是比较费时间的,如果为了提高效率我们可以使用BufferedReader对Reader进行包装,同时也为保护我们的硬盘,(Buffer  缓冲)这样可以提高读取得速度,我们可以一行一行的读取文本,使用readLine()方法。

BufferedReader br = new BufferedReader(new InputStreamReader(new Fil

相关文档:

result love(boy, girl) ­

{ ­

if( boy.有房() and boy.有车() ) ­

{ ­

boy.set(nothing); ­

return girl.嫁给(boy); ­

&n ......

原题如下:

用字符串输入的方式编写一个简单的通讯录。此通讯录由多条记录构成。

每条记录包括一个联系人的姓名、性别、电话、通信地址,并具有查询、增加、修改、删除等功能,

且每执行一次功能操作后,可以选择用类似以下的格式,输出通讯录的所有信息记录:

编号       姓名 &nbs ......

package zzq.main;

import java.io.BufferedReader;

import java.io.InputStreamReader;

import java.lang.reflect.Array;

import java.util.ArrayList;

import java.util.Arrays;

/************************************************************************

* C语言趣味程序(不到)百例-之Java实现

*

* 0 ......

现在市场上的oa基本上可归结为两大阵营,即php阵营和java阵营。但对接触oa不久的用户来说,看到的往往只是它们的表相,只是明显的价格差异,却很难看出它们之间的实际差异。其实, PHP + MYSQL 不值钱不仅仅局限于oa软件,而是整体上PHP + MYSQL开发的软件都不如java开发的软件值钱。为什么PHP + MYSQL 的OA为什么不值钱� ......

先来看看客户段程序编写的流程:

1、 首先调用Socket类的构造函数,以服务器的指定的IP地址或指定的主机名和指定的端口号为参数,创建一个Socket流,在创建Socket流的过程中包含了向服务器请求建立通讯连接的过程实现。

2、 建立了客户端通讯Socket后。就可以使用Socket的方法getInputStream()和getOutputStream() ......

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值