java语言深入文件交流
2012/8/8 11:32:00 人气 454 怀旧国机论坛1.什么是数据流?
数据流是指所有的数据通信通道。有两类流,InputStream and OutputStream,Java中每一种流的基本功能依赖于它们。InputStream用于read,OutputStream用于write,读和写都是相对于内存说的,读就是从其他地方把数据拿进内存,写就是把数据从内存推出去。这两个都是抽象类,不能直接使用。
2.InputStream的方法有:
read()从流中读入数据有3种方式:
◆int read() 一次读一个字节
◆int read(byte**) 读多个字节到数组中
◆int read(byte**,int off,int len) 指定从数组的哪里开始,读多长
◆skip() 跳过流中若干字节
◆available() 返回流中可用字节数,但基于网络时无效,返回0
◆markSupported() 判断是否支持标记与复位操作
◆mark() 在流中标记一个位置,要与markSupported()连用
◆reset() 返回标记过的位置
◆close() 关闭流
3.OutputStream的方法:
◆write(int)写一个字节到流中
◆write(byte**)将数组中的内容写到流中
◆write(byte**,int off,int len)将数组中从off指定的位置开始len长度的数据写到流中
◆close()关闭流
◆flush()将缓冲区中的数据强制输出
4.File类
File可以表示文件也可以表示目录,File类控制所有硬盘操作。
构造器:
◆File(File parent,String child) 用父类和文件名构造
◆File(String pathname) 用绝对路径构造
◆File(String parent,String child) 用父目录和文件名构造
◆File(URI uri) 用远程文件构造
常用方法:
boolean *NewFile();
boolean exists();
例子:
//建立 test.txt 文件对象,判断是否存在,不存在就创建
import java.io.*;
public class *NewFile{
public static void main(String args**){
File f=new File(“test.txt“);
try{
if(!f.exists())
f.*NewFile();
else
System.out.println(“exists“);
}catch(Exception e){
e.printStackTrace();
}
}
}
boolean mkdir()/mkdirs()
boolean renameTo(File destination)
例子:
//看一下这 mkdir()/mkdirs() 的区别和 renameTo 的用法
import java.io.*;
public class *Dir{
public static void main(String args**){
File f=new File(“test.txt“);
File f1=new File(“Dir“);
File f2=new File(“Top/Bottom“);
File f3=new File(“newTest.txt“);
try{
f.renameTo(f3);
f1.mkdir();
f2.mkdirs();
}catch(Exception e){
e.printStackTrace();
}
}
}
String getPath()/getAbsolutePath()
String getParent()/getName()
例子:
//硬盘上并没有parent 目录和 test.txt 文件,但我们仍然可以操作,
因为我们创建了他们的对象,是对对象进行操作
import java.io.*;

。
沙发 | 【Hacker〉顶帖组、小乞丐![]() 【Hacker〉顶帖组为你顶帖 加入【Hacker〉顶帖组吧! |
发表回复