java IO 流-字节流-字符流-缓冲流 详细案例 博客分类: Java语言 java流IO
程序员文章站
2024-03-25 13:00:04
...
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.FileReader; import java.io.FileWriter; // 流 以 内存 为参照 // 字节流 : FileOuputStream FileInputStream // 字符流 : FileWriter FileReader // 缓冲流: BufferedWriter BufferedReader public class IO { public static void main(String[] args){ fileReader(); } //字节流 输出流 public static void fileOutputStream(){ File f = new File("e:\\text.txt"); //指定到支持的文件 try{ //文件不存在时创建 if(f.exists()==false){ f.createNewFile(); } FileOutputStream fos = new FileOutputStream(f); String str = "今天的天气很闷沉"; byte[] b = str.getBytes(); fos.write(b); fos.close(); }catch(Exception ex){ ex.printStackTrace(); } } //字符流 输出流 public static void fileWriter(){ File f = new File("e:\\text.txt"); try{ if(f.exists()==false){ f.createNewFile(); } FileWriter fw = new FileWriter(f,true); //true 表示不覆盖文件里面的内容 String str = "今天的天气很闷沉"; char[] ch = str.toCharArray(); fw.write("\r\n"); //写入换行 fw.write(ch); fw.close(); }catch(Exception ex){ ex.printStackTrace(); } } // 缓冲流 输出流 public static void bufferedWriter(){ File f = new File("e:\\text.txt"); try{ if(f.exists()==false){ f.createNewFile(); } BufferedWriter bw = new BufferedWriter(new FileWriter(f,true)); // 以字符流的对象为参数 //缓冲流可以直接操作字符 bw.write("\r\n"); bw.write("天气不是很好!"); bw.close(); }catch(Exception ex){ ex.printStackTrace(); } } //字节流 输入流 public static void fileInputStream(){ File f = new File("e:\\text.txt"); try{ if(f.exists()==false){ f.createNewFile(); } FileInputStream fis = new FileInputStream(f); // 字节数组的长度 ,由文件的字节大小 byte[] b = new byte[(int)f.length()]; fis.read(b); //读入数据 String str = new String(b); //以字节数组构建字符串 fis.close(); System.out.println(str); }catch(Exception ex){ ex.printStackTrace(); } } //字符流 输入流 public static void fileReader(){ File f = new File("e:\\text.txt"); try{ if(!f.exists()){ f.createNewFile(); } FileReader fr = new FileReader(f); StringBuffer sb = new StringBuffer(); char[] ch = new char[1000]; // 字符的长度未知 int hasRead = 0; while((hasRead=fr.read(ch))>0){ sb.append(new String(ch,0,hasRead)); } fr.close(); System.out.println(sb); }catch(Exception ex){ ex.printStackTrace(); } } //缓冲刘 输入流 public static void bufferedReader(){ File f = new File("e:\\text.txt"); try{ if(!f.exists()){ f.createNewFile(); } BufferedReader br = new BufferedReader(new FileReader(f)); //字符流的对象构造 //每次读取文件的一行 StringBuffer sb = new StringBuffer(); while(br.ready()){ //是否有读取内容 sb.append(br.readLine()); //读取一行 sb.append("\r\n"); //换行 } br.close(); System.out.println(sb); }catch(Exception ex){ ex.printStackTrace(); } } }
推荐阅读
-
java IO 流-字节流-字符流-缓冲流 详细案例 博客分类: Java语言 java流IO
-
Java IO流 博客分类: J2EEJava基础 javaio流
-
java中的IO:节点流的使用 博客分类: java基础 javaio节点流FileInputStreamFileOutputStream
-
java中的IO:流的分类 博客分类: java基础 javaio流stream分类
-
JAVA IO InputStreamReader和OutputStreamReader 博客分类: JAVA 基础 JAVA.io操作 字符流
-
javaI/O系统基础知识 博客分类: java语言 ,I/O ,流 javaI/O流字节流文件传输
-
java中的IO:处理流的使用 博客分类: java基础 javaio流处理流缓冲流对象流
-
JAVA中常用IO流类:FileReader和FileWriter 博客分类: Java FileReader、FileWriter
-
java IO流学习总结 博客分类: java
-
JAVA IO流学习总结----字节流 博客分类: java java、IO流