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 |
|