zoukankan      html  css  js  c++  java
  • 文件与流

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

    package File;

    import java.io.File;
    import java.util.ArrayList;
    import java.util.Scanner;
    public class Filerongliang {
    static long size=0;
    private static ArrayList<String> filelist=new ArrayList<String>();
    private static Filerongliang s;
    private static Scanner scan;
    public static void main(String[] args) {
    s = new Filerongliang();
    System.out.println("请输入一个文件夹 ");
    scan = new Scanner(System.in);
    String filePath = scan.nextLine();
    Filerongliang.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 File;

    import java.io.File;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    public class Addjianmi {
    private static final int numOfEncAndDec=0x99;//加密解密密钥
    private static int dataOfFile=0;//文件字节内容
    public static void main(String[] args) {
    File srcFile=new File("E:\JAVA\eclipse\文件的加密解密\poem.txt");//初始化文件
    File encFile=new File("E:\JAVA\eclipse\文件的加密解密\poem1.txt"); //加密文件
    File decFile=new File("E:\JAVA\eclipse\文件的加密解密\poem2.txt"); //解密文件

    try {
    //EncFile(srcFile,encFile); //加密操作
    //DecFile(encFile,decFile);//解密操作
    EncFile(srcFile,decFile); //加密操作
    DecFile(decFile,encFile);
    }catch(Exception e) {
    e.printStackTrace();
    }
    }
    private static void EncFile(File srcFile,File encFile)throws Exception{
    if(!srcFile.exists()) {
    System.out.println("source file not exixt");
    }
    if(!encFile.exists()) {
    System.out.println("encrypt file created");
    encFile.createNewFile();//若无加密文件,新建一个加密文件
    }
    InputStream fis=new FileInputStream(srcFile);
    OutputStream fos=new FileOutputStream(encFile);

    while((dataOfFile=fis.read())>-1) {//当读到文件内容时
    fos.write(dataOfFile^numOfEncAndDec);//将读出的内容加密后写入

    }
    System.out.println("读出并写入成功!");
    fis.close();
    fos.flush();
    fos.close();
    }
    private static void DecFile(File encFile,File decFile)throws Exception{
    if(!encFile.exists()) {
    System.out.println("encrypt file not exixt");
    }
    if(!decFile.exists()) {
    System.out.println("decrypt file created");
    decFile.createNewFile();
    }
    InputStream fis=new FileInputStream(encFile);
    OutputStream fos=new FileOutputStream(decFile);

    while((dataOfFile=fis.read())>-1) {
    fos.write(dataOfFile^numOfEncAndDec);
    }
    System.out.println("读出并写入成功!");
    fis.close();
    fos.flush();
    fos.close();
    }

    }

     

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

  • 相关阅读:
    memcached +mysql+php 例子
    PHP利用memcache缓存技术提高响应速度
    实现QQ第三方登录教程(php)
    php如何解决多线程同时读写一个文件的问题
    php数组函数常见的那些
    PHP 5种方式获取文件后缀名
    函数与方程
    函数图像习题
    高中数学中需要重点关注的函数和图像
    特殊分段函数的图像画法
  • 原文地址:https://www.cnblogs.com/yandashan666/p/9982084.html
Copyright © 2011-2022 走看看