AvA 你Q2》 辽宁经济职业技术学院信息系 硕士、副教授陈英 JAVA
流和文件(2) 辽宁经济职业技术学院信息系 硕士、副教授 陈英
AvA 文本流 因为ava使用了 Unicode字符,而在 Windows上的字 符串以ASCI格式保存。如果以 Unicode编码格式的 字符串被写到一个文件中,那么在主机环境下该文件 很可能不能读。 为此java使用了一组流过滤器来桥接了 Unicode编码 文本和本地操作系统编码的隔阂。 所有的这些类都派生自抽象类 Reader和 Writer类,并 且名字都保留了二进制数据的类的名字特征。 例,下面代码创建了一个读取器,它可以读取控制台 的击键并且自动把它们转化为 Unicode O InputStream Reader in= new InputStream Reader(system. in); JAVA
文本流 因为java使用了Unicode字符,而在Windows上的字 符串以ASCII格式保存。如果以Unicode编码格式的 字符串被写到一个文件中,那么在主机环境下该文件 很可能不能读。 为此java使用了一组流过滤器来桥接了Unicode编码 文本和本地操作系统编码的隔阂。 所有的这些类都派生自抽象类Reader和Writer类,并 且名字都保留了二进制数据的类的名字特征。 例,下面代码创建了一个读取器,它可以读取控制台 的击键并且自动把它们转化为Unicode。 InputStreamReader in = new InputStreamReader(System.in);
AvA 文本流 以二进制格式写数据,使用一个 DataOutstrean。 以文本格式写数据,使用一个 Printwriter 因为把一个读取器或者写入器连接到一个 文件上是常见的操作,所以java引入了两个 方便的类: Filereader和 File writer 例 o File writer out= new File writer(“ output. txt”) JAVA
文本流 以二进制格式写数据,使用一个 DataOutStream。 以文本格式写数据,使用一个PrintWriter。 因为把一个读取器或者写入器连接到一个 文件上是常见的操作,所以java引入了两个 方便的类:FileReader和FileWriter。 例: FileWriter out = new FileWriter(“output.txt”)
AvA 文本流 ○对于文本输出,可以使用一个 Printwriter。 个打印写入器可以以文本格式打印字符串和数 字。一个 Printwriter必须被结合一个目的写入 器 PrintWriter out= new Print Writer(new File writer(“ employee.txt”); ○也可以把一个打印写入器同一个目的(输出) 流结合进来。构造器 Printwriter( Outputstream)会自动添加一个 Outputstream Writer来把流中的 Unicode字符 转化为字节。 PrintWriter out= new PrintWriter(new File writer Outputstream(“ employe.txt”); JAVA
文本流 对于文本输出,可以使用一个PrintWriter。一 个打印写入器可以以文本格式打印字符串和数 字。一个PrintWriter必须被结合一个目的写入 器。 PrintWriter out = new PrintWriter (new FileWriter(“employee.txt”)); 也可以把一个打印写入器同一个目的(输出) 流结合进来。构造器 PrintWriter(OutputStream)会自动添加一个 OutputStreamWriter来把流中的Unicode字符 转化为字节。 PrintWriter out = new PrintWriter (new FileWriter OutputStream(“employee.txt”));
当 java.io. Print Writer((打印写入器 AvA O PrintIn方法会自动添加正确的行尾符 ( Windows上“rn”)得到的。 O Print Writer(Writer out, boolean auto Falush 创建一个新的 Printwriter。若 autofalush为 true,那么 Println方法将清洗输岀缓冲。 o void print( object obj)打印一个对象(实际 上打印该对象得 tostring结果字符串) o void printIn( String s) ○打印 Unicode字符串并加上一个行结束符。如 果启用了自动清洗模式,那么清洗该流。 JAVA
java.io.PrintWriter(打印写入器) Println方法会自动添加正确的行尾符 (Windows上“\r\n”)得到的。 PrintWriter(Writer out,boolean autoFalush) 创建一个新的PrintWriter。若autoFalush为 true,那么Println方法将清洗输出缓冲。 void print(object obj) 打印一个对象(实际 上打印该对象得toString结果字符串)。 void println(String s) 打印Unicode字符串并加上一个行结束符。如 果启用了自动清洗模式,那么清洗该流
AvA 读文本输入 ○处理文本输入只有一个 Bufferedreader类, 它有一个方法 readline能够读取一行文本。 你需要把一个缓冲的读取器同一个输入源结 合进来 BufferedReader in= new BufferedReader(File reader("employee. txt)); 若要从文本输入中读取数字,你需要首先读 取一个字符串,然后把它转化为一个数字。 o String S =in. readLineo; o double x= Double. parseDouble(s) JAVA
读文本输入 处理文本输入只有一个BufferedReader类, 它有一个方法 readLine能够读取一行文本。 你需要把一个缓冲的读取器同一个输入源结 合进来。 BufferedReader in = new BufferedReader(FileReader( “employee.txt”)); 若要从文本输入中读取数字,你需要首先读 取一个字符串,然后把它转化为一个数字。 String s =in.readLine(); double x = Double.parseDouble(s)
AvA 文件的输入输出 文件对象的建立 o File fp= new File(“ tempfile. txt”); 文件对象的建立:对文件操作要定义文件流。 File对象表示的是通向你的硬盘上的一个实际文件 或者目录的路径而不是一个流你可以从一个表示 相应文件路径的Fie对象生成与该文件对应的流对 象。 前任 read JAVA
文件的输入输出 文件对象的建立 File fp=new File(“tempfile.txt”); 文件对象的建立:对文件操作要定义文件流。 File对象表示的是通向你的硬盘上的一个实际文件 或者目录的路径,而不是一个流.你可以从一个表示 相应文件路径的File对象生成与该文件对应的流对 象。 输出文件 输入文件 read writ e
AvA 文件的输入输出 增加缓冲区流减少访问硬盘的次数提高效率 filel. txt→>输入缓冲区→输出缓冲区 file2. txt 输入流 输出流 文件 文件流 缓冲区流 JAVA
文件的输入输出 增加缓冲区流,减少访问硬盘的次数,提高效率 文件 文件流 缓冲区流 file1.txt file2.txt 输入流 输出流 输入缓冲区 输出缓冲区
AvA 文件的输入输出 FileInputstrean类用来打开一个输入文件。 FileOutputstream类用来打开一个输出文件。 Filelnputstream fin=new FilelnputStream (“ tempfile. txt”); FileInputstream和 FileOutputstream用 于读写一个磁盘文件 JAVA
文件的输入输出 ❖FileInputStream类用来打开一个输入文件。 ❖FileOutputStream类用来打开一个输出文件。 FileInputStream fin=new FileInputStream (“tempfile.txt”); FileInputStream和 FileOutputStream用 于读写一个磁盘文件
AvA 文件的输入输出 文件流的建立 O FileInputStream in=new FileInputstream(fp); O FileOutputStream out-=new FileOutputstream(fp) o例:文件拷贝(注意要捕获文件异常) 输入流的参数是用于输入的文件名 输出流的参数是用于输出的文件名 JAVA
文件的输入输出 文件流的建立 FileInputStream in=new FileInputStream(fp); FileOutputStream out=new FileOutputStream(fp); 例:文件拷贝(注意要捕获文件异常) 输入流的参数是用于输入的文件名 输出流的参数是用于输出的文件名