• 微信公众号:美女很有趣。 工作之余,放松一下,关注即送10G+美女照片!

字符流、打印流、转换流、文件流

互联网 diligentman 2周前 (04-08) 8次浏览

字符缓冲流

  1. 缓冲流:BufferedReader/BufferedWriter

    • 高效读写

    • 支持输入换行符

    • 可一次写一行,读一行

    • BufferedWriter

    • /**
       * 演示BufferedWriter
       */
      public class demo6 {
          public static void main(String[] args)  throws Exception{
              //创建BufferedWriter
              FileWriter fw=new FileWriter("e:\IO流\buffer.txt");
              BufferedWriter bw=new BufferedWriter(fw);
              //写入
              for (int i = 0; i <10 ; i++) {
                  bw.write("好好学习,天天向上");
                  bw.newLine();//写入一个换行符windows rn  linux n
                  bw.flush();
              }
              //3关闭
              bw.close();
              System.out.println("执行完毕");
      
          }
      }
      

打印流

  1. PrintWriter:

    • 封装了print() / printIn() 方法,支持写入后换行
    • 支持数据原样打印
    /**
     * 演示PrintWriter
     */
    public class demo7 {
        public static void main(String[] args) throws Exception {
            //1创建打印流
            PrintWriter pw=new PrintWriter("e:\IO流\print.txt");
            //2打印
            pw.println(97);
            pw.println(true);
            pw.println(3.14);
            pw.println('a');
            //3关闭
            pw.close();
            System.out.println("执行完毕");
        }
    }
    

转换流

  1. 桥转换流: InputStreamReader / OutpurStreamEriter

    • 可将字节流转换为字符流
    • 可设置字符的编码方式
    /**
     * 使用OutpurStreamWriter
     */
    public class demo2 {
        public static void main(String[] args)throws Exception {
            //1创建OutputStreamWriter
            FileOutputStream fos=new FileOutputStream("e:\IO流\info.txt");
            OutputStreamWriter osw=new OutputStreamWriter(fos,"gbk");
            //写入
            for (int i = 0; i < 10; i++) {
                osw.write("我爱北京,我爱故乡rn");
                osw.flush();
            }
            //3关闭
            osw.close();
            System.out.println("执行完毕");
         }
    }
    

File类

  1. 概念:代表物理盘符中的一个文件或者文件夹

  2. 方法

    • createNewFile() //创建一个新文件
    • mkdir() //穿件一个新目录
    • delete() //删除文件或空目录
    • exists() //判断File对象所代表的UI想是否存在
    • getAbsolutePath() //获取文件的绝对路径
    • getName() //取得名字
    • getParent() //获取文件/目录所在的目录
    • isDirectory() //是否是目录
    • isFile() // 是否是文件
    • length() //获得文件的长度
    • listFiles() //列粗目录中的所有内容
    • renameTo()//修改文件名为
    /**
     * File类的使用
     * (1) 分隔符
     * (2) 文件操作
     * (3)  文件夹操作
     */
    public class demo1 {
        public static void main(String[] args)throws Exception {
    //        separator();
            fileOpe();
        }
        //(1)分隔符
        public  static  void  separator(){
            System.out.println("路径分隔符"+ File.pathSeparator);
            System.out.println("名称分隔符"+File.separator);
        }
        //(2)文件操作
        public static void  fileOpe() throws Exception{
            //1创建文件 createNewFile()
            File file=new File("e:\IO流\file.txt");
    //        System.out.println(file.toString());
            if (!file.exists()) {
                boolean b = file.createNewFile();
                System.out.println("创建结果" + b);
            }
    
            //2删除文件
            //2.1直接删除
    //        System.out.println("删除结果"+file.delete());
            //2.2使用JVM退出时删除
    //        file.deleteOnExit();
    //        Thread.sleep(5000);
    
    
    
            //3获取文件信息
            System.out.println("获取文件的绝对路径"+file.getAbsolutePath());
            System.out.println("获取路径:"+file.getPath());
            System.out.println("获取文件名称"+file.getName());
            System.out.println("获取父目录"+file.getParent());
            System.out.println("获取文件长度"+file.length());
            System.out.println("文件创建时间"+new Date(file.lastModified()));
    
            //4判断
            System.out.println("是否可写"+file.canWrite());
            System.out.println("是否时文件"+file.isFile());
            System.out.println("是否隐藏"+file.isHidden());
        }
    

程序员灯塔
转载请注明原文链接:字符流、打印流、转换流、文件流
喜欢 (0)