博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
实验05博客园总结
阅读量:6115 次
发布时间:2019-06-21

本文共 2357 字,大约阅读时间需要 7 分钟。

什么是流:

一连串有顺序的数据系列可以看成是一个流,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
filelist=new ArrayList
(); private static filecount s; private static Scanner scan; public static void main(String[] args) { s = new filecount(); System.out.println("请输入一个文件夹\n"); 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、编写一个文件分割工具,能把一个大文件分割成多个小的文件。并且能再次把他们合并起来得到完整的文件。

 

转载于:https://www.cnblogs.com/jmdd/p/9991448.html

你可能感兴趣的文章
抽象工厂方法
查看>>
ubuntu apt-get 安装 lnmp
查看>>
焊盘 往同一个方向增加 固定的长度方法 总结
查看>>
eclipse的maven、Scala环境搭建
查看>>
架构师之路(一)- 什么是软件架构
查看>>
jquery的冒泡和默认行为
查看>>
USACO 土地购买
查看>>
【原创】远景能源面试--一面
查看>>
B1010.一元多项式求导(25)
查看>>
10、程序员和编译器之间的关系
查看>>
前端学习之正则表达式
查看>>
配置 RAILS FOR JRUBY1.7.4
查看>>
AndroidStudio中导入SlidingMenu报错解决方案
查看>>
修改GRUB2背景图片
查看>>
Ajax异步
查看>>
好记性不如烂笔杆-android学习笔记<十六> switcher和gallery
查看>>
JAVA GC
查看>>
codeforce 599B Spongebob and Joke
查看>>
3springboot:springboot配置文件(外部配置加载顺序、自动配置原理,@Conditional)
查看>>
9、Dubbo-配置(4)
查看>>