分享

第八章java.io包

 昵称2966785 2010-08-29
 
 
java。io包包括对文件和目录属性的操作,对文件读写的操作等。
File file =new File(“Test.txt”);
是构造一个文件对象。
File对象即可表示文件,也可以表示目录。
file.exists();   //判断文件或目录是否存在
file.isFile();        //判断是否是文件
file.isDiretory();      、、判断是否是目录
file.getName();         、、获取文件或目录的名字
file.getPath();         、、获取文件或目录的路径
filegetAbsolutePath();   、、获取文件的绝对路径
file.lastModified();       、、获取文件或目录的最后修改日期
file.length();            、、获取文件或目录的大小,单位为字节
流:是指一连串流动的字符,是以先进先出的方式发送和接收数据的通道,流分为输入流和输出流。是相对程序而言的。
分字节流和字符流。
字节流是以8位通用字节流,其基本单位是字节。
字符流是16位Unicode字符流,这种流的基本单位是Unicode字符。
带InputStream和OutputStream.都是字节流。
带Unicode和Reader是字符流。
 
FileInputStream
 
输入流是将文件中的数据输入到内存中。它是一个字节输入流InputStream抽象类的一个子类。
构造一个文件输入流对象。
例:用FileInputStream 读文本文件
InputStream fileobject=new FileInputStream(“text.txt”);
fileobject.available();  //可读取的字节数
fileobject.read();     //读取文件的数据
关闭文件输入流对象。
fileobject.close();
public static void main(String[] args) throws IOException {
        int size;
        InputStream fileobject = new FileInputStream(args[0] );
        System.out.println(“可取读的字节数: "
            + (size = fileobject.available()));
        char[] text = new char[200] ;
        for (int count = 0; count < size; count++) {
            text[count] = ((char) fileobject.read());
            System.out.print(text[count]);
        }
        System.out.println("");
        fileobject.close();
    }
 
利用字节流类FileOutputStream写文本文件
文件输出流,它的作用是把数据存储到文件中去。它是OutputStream抽象类下的一个子类。我们可以利用它把内存中的数据写入到文本文件中去,
构造一个文件输出流对象。
OutputStream抽象类下的一个子类。
OutputStream fos=new FileOutputStream(“Text.txt”);
利用文件输出流的方法把数据写入到文本文件中去。
String str=”好好学习Java”;
byte[]words=str.getBytes();
fos.write(words,0,words.length);  //利用write方法将数据写入到文件中去。
关闭文件输出流
fos.close();
 
利用字符流类BufferedReader和FileReader读文本文件
BufferedReader和FileReader两个类都是Reader抽象类下的子类。它们都可以通过字符流的方式读取文件,并使用缓冲区,提高了读文本文件的效率。
构造一个BufferedReader对象。
FileTeader fr=new FileReader(“mytest.txt”);
BufferedReader br=new BufferedReader(fr);
利用BufferedTeader的方法读取文本文件的数据。
br.readLine();    //读取一行数据,返回字符串。
关闭相关的流对象。
br.close();
fr.close();
利用字符流类BufferedWriter和FileWriter写文本文件
都是Writer抽象类下的子类。通过它们可以字符流的方式并通过缓冲区把数据写入文本文件,这也提高了写文本文件的效率。
引入相关的类。
import java.io.FileWriter;
import java.io.BufferedWriter;
import java.io.IOException;
构造一个BufferedWriter对象。
FileWriter fw=new FileWriter(“mytest.txt”);
BufferedWriter bw=new BufferedWriter(fw);
利用BufferedWriter对象
bw.write(“hello”);
相关流对象的清空和关闭。
bw.flush();
fw.close();
二进制文件的读写
利用字节流类DataInputStream读二进制文件
引入相关类。
import java.io.FileInputStream;
import java.io.DataInputStream;
构造一个数据输入流对象。
FileInputStream fis=new FileInputStream(“HelloWorld.class”);
DateInputStream dis=new DataInputStream(fis);
利用数据输入流类的方法读取二进制文件的数据。
dis.readint();      //读取出来的是整数。
dis.readByte();    //读取出来的数据是Byte类型。
关闭数据输入流。
dis.close();    //关闭数据输入流。
利用字节流类DataOutputStream写二进制文件。
引入相关的类。
import java.io.FileOutputStream;
import java.io.DataOutputStream;
构造一个数据输出流对象。
FileOutputStream outFile=new FileOutputStream(“temp.class”);
DataOutputStream out=new DataOutputStream(outFile);
利用数据输出流类的方法写二进制文件的数据。
out.write(1);   //把数据写入二进制文件。
关闭数据输出流。
out.close();

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/q11w2212/archive/2008/09/03/2873270.aspx

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多