---------------------- android培训、java培训、期待与您交流!----------------------
IO流
IO流也分字符流,字节流
字节流有两个基类 InputSteam OutputSteam
字符流两个基类 Reader Writer
---------Filewriter操作文件
例子
1.//创建一个filewriter 对象,明确文件 ,该文件会被创建到指定目录下,如果该目录下已经存在同名文件,会被覆盖
Filewriter fw =FileWriter ("demo.txt")
2.fw.writer("abcdfe")写入流中
3.fw.flush();刷新流对象中的缓冲数据
4.fw.close();关闭流资源,但也会刷新一次
IO异常处理一般办法
Filewriter fw = null;
try{fw=new Filewriter("demo.txt")
fw.write("abcdf")}
catch(IOException e)
{sop(e.toString)}
finall{ try{if(fw!=null) fw.close();)
catch(IOException e)
{sop(e.toString)}
FileWriter文件末尾增("demotxt",true)
是在源文件后面继续加入
\r\n 是换行的作用
fr.read 读取一个字符,一次只读一次
读取字符串
int len=0, char[]buf =new char[1024]
while((len=fr.read(buf))!=-1)
{
sop(new string (buf,0,len));
}
拷贝文件文本---C盘一个文件到D盘
原理:1.在D盘创建一个文件,用于存C盘文件的数据
2.定义读取流和C盘关联,
3.不断读写、
4.关闭资源
FileWriter fw= new FileWriter(目的地文件)
FileReader fr= new FileReader(需被复制的文件)
字符流的缓冲区、
提高了对数据的读写效率、
BufferedWriter
bufferedreader 需结合流使用
缓冲区是为了提高流的效率,所以必须要有流对象
readLine(); 读一行,返回数据,不返回最后的回车符。。
String line= null.
while( line=bufr.readLine()!=null)
{sop(line)}
装饰设计模式
当想要对已有的对象进行功能增加时,可定义类,将已经有的对象传入,基于本功能 提供加强,自定义的该类称为装饰类
装饰和继承的区别?
装饰模式比继承更灵活,避免继续体系的臃肿, 装饰类,和被装饰类功能类似,更强而已
字节流(图片,数据)FileSteam,
OutputSteam 写 直接写入,不需要flush,
键盘输入
InptuSteam in = System.in
、
字节流赚字符流,使用字符流的readline方法,
inputstreamreader是字节流通向字符流的桥梁。
字符流转字节流的桥梁、
outputSream writer
流操作的基本规律
1.明确源和目的地
源:输入流 inputstream reader
目的地:输出流 outputstream
writer
2.操作的数据是否为纯文本。
是。 filereader和 filewriter
否, inputstream和outputstream
3当体系明确后,在明确使用的具体对象
设备来区别 源设备 :内存,硬盘,。键盘、
目的设备 内存 硬盘,控制台
通常字符编码转换时使用 转换流,
默认gbk编码
File 类
将文件或者文件夹封装成对象,方便进行操作
File f=new File("a.txt")
1.创建文件 boolean createNewFile();
在指定位置创建,如已存在,则不创建,返回错。
2.删除delete ,失败返回flase
deleonExit 退出时删除
3,判断 canExecute()文件是否可执行,
、exists(),是否存在文件或者文件夹
isDirectiory 是否是目录
isFile()是否文件
4.获取
getname文件名
getpath文件路径
length()文件长度
file1.renameTo(file2)重命名
listroots();列出本机盘符
list()列出当前目录文件 文件夹名称,返回字符串
properties
是hashtable子类,专门与IO结合的map集合特点,
用于键值对形式的配置文件
设置和获取元素
prop.setproperty( )
prop.getproperty
stringpropertyNames()返回set集合所有的建
SequenceInputStream 对多个流进行合并
---------------------- android培训、java培训、期待与您交流! ----------------------
详细请查看:http://edu.csdn.net/heima