zoukankan      html  css  js  c++  java
  • 实验05博客园总结

    什么是流:

    一连串有顺序的数据系列可以看成是一个流,java将文件看成流

    Java通过流对象存取文件

    流的分类:

    1.输入流和输出流:数据“流入”程序的称为“输入”。

    2.字节流和字符流:指存取数据的最小单位。

    3.节点流(Node Stream)和处理流(Processing Stream):节点流直接连接到数据源,处理流是对一个已存在的流的连接和封装,通过所封装的流的功能调用实现增强的数据读写功能,它并不直接连到数据源。

    流的基类:

    1.字节流的两个基类InputStream和OutputStream:以字节为单位,是所有字节输入与输出流的父类;

    2.字符流的两个基类Reader和Writer:以字符(2个字节)为单位。

    1、编写一个程序,指定一个文件夹,能自动计算出其总容量

    package 课堂实验05;
    
    import java.io.File;
    import java.util.ArrayList;
    import java.util.Scanner;
    public class filecount {
        static long size=0;
        private static ArrayList<String> filelist=new ArrayList<String>();
        private static filecount s;
        private static Scanner scan;
        public static void main(String[] args) {
            s = new filecount();
            System.out.println("请输入一个文件夹
    ");
            scan = new Scanner(System.in);
            String filePath = scan.nextLine();
            filecount.getFiles(filePath);
            System.out.println("文件夹总容量为:"+size); 
        }
        static void getFiles(String filePath) {
            int i = 0;
            int sum = 0;
            File f=new File(filePath);
            File[] fs=f.listFiles();
            for(File file:fs) {
                if(file.isDirectory()) {
                    getFiles(file.getAbsolutePath());
                    filelist.add(file.getAbsolutePath()); 
                } else {
                    System.out.println(fs[i].getAbsolutePath());
                    sum = file.getAbsolutePath().length();
                    size += file.getAbsolutePath().length();
                    System.out.println("本文件大小为"+sum);
                    i++;
                }
                
            }
            
        }
    }

    结果截图如图:

    2、编写一个文件加解密程序,通过命令行完成加解密工作

    package 课堂实验05;
    
    import java.io.BufferedInputStream;
    import java.io.BufferedOutputStream;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    
    public class eencryption {
        public static void encryption() throws IOException {
            BufferedInputStream bis = new BufferedInputStream(new FileInputStream("D://TTT1.txt"));
            BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream("D://TTT2.txt"));       
            int b;
            while((b = bis.read()) != -1) {
                bos.write(b ^ 123);
            }   
            bis.close();
            bos.close();
        }
        public static void main(String[] args) throws IOException {
            encryption();
        }
    }

    3、编写一个文件分割工具,能把一个大文件分割成多个小的文件。并且能再次把他们合并起来得到完整的文件。

  • 相关阅读:
    Study Plan The TwentySecond Day
    Study Plan The Nineteenth Day
    Study Plan The TwentySeventh Day
    Study Plan The Twentieth Day
    Study Plan The TwentyFirst Day
    python实现进程的三种方式及其区别
    yum makecache
    JSONPath 表达式的使用
    oracle执行cmd的实现方法
    php daodb插入、更新与删除数据
  • 原文地址:https://www.cnblogs.com/jmdd/p/9991448.html
Copyright © 2011-2022 走看看