• 实验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、编写一个文件分割工具,能把一个大文件分割成多个小的文件。并且能再次把他们合并起来得到完整的文件。

  • 相关阅读:
    delphi TOpenDialog
    delphi TSaveDialog
    Delphi中一些常用的组合键值
    delphi TColorDialog
    Delphi TFindDialog TReplaceDialog对话框在Memo中的使用
    Delphi ListView基本用法大全
    地球帝国3
    五笔难拆字字根表
    Delphi Format中的换行符号是什么
    myNote
  • 原文地址:https://www.cnblogs.com/jmdd/p/9991448.html
Copyright © 2020-2023  润新知