java作业<文件与流>
1、编写一个程序,指定一个文件夹,能自动计算出其总容量
1 package renwu1;
2
3
4 import java.io.File;
5 import java.util.ArrayList;
6
7 public class test1 {
8 long size = 0;
9 static ArrayList<String> filelist = new ArrayList<String>();
10
11 void getFiles(String file_address) {
12 File root = new File(file_address);
13 File[] files = root.listFiles();
14 for(File file:files) {
15 if(file.isDirectory()) {
16 getFiles(file.getAbsolutePath());//通过递归,得到某一路径下所有的文件目录
17 filelist.add(file.getAbsolutePath());
18 }
19 else {
20 size = file.getAbsolutePath().length();
21 }
22 }
23 System.out.println("文件夹的容量为:"+size);
24 }
25
26 public static void main(String[] args) {
27 test1 c1 = new test1();
28 String filelujing = "E:\\课程作业\\java程序设计\\Java第一次课";
29 c1.getFiles(filelujing);
30 }
31
32 }

2、编写一个文件加解密程序,通过命令行完成加解密工作
1 package renwu2;
2
3 import java.io.File;
4 import java.io.InputStream;
5 import java.io.OutputStream;
6 import java.io.FileInputStream;
7 import java.io.FileOutputStream;
8 //编写一个文件加解密程序,通过命令行完成加解密工作
9 public class test2 {
10 private static final int numOfEncAndDec=0x99;//加密解密密钥
11 private static int dataOfFile=0;//文件字节内容
12
13 public static void main(String[] args) {
14 File srcFile=new File("E:\\java的txt文本\\原文件.txt");//初始化文件
15 File encFile=new File("E:\\java的txt文本\\解密后.txt"); //加密文件
16 File decFile=new File("E:\\java的txt文本\\加密后.txt"); //解密文件
17
18 try {
19 EncFile(srcFile,decFile); //加密操作
20 DecFile(decFile,encFile);
21 }catch(Exception e) {
22 e.printStackTrace();
23 }
24 }
25 private static void EncFile(File srcFile,File encFile)throws Exception{
26 if(!srcFile.exists()) {
27 System.out.println("source file not exixt");
28 }
29 if(!encFile.exists()) {
30 System.out.println("encrypt file created");
31 encFile.createNewFile();//若无加密文件,新建一个加密文件
32 }
33 InputStream fis=new FileInputStream(srcFile);
34 OutputStream fos=new FileOutputStream(encFile);
35
36 while((dataOfFile=fis.read())>-1) {//当读到文件内容时
37 fos.write(dataOfFile^numOfEncAndDec);//将读出的内容加密后写入
38 }
39 fis.close();
40 fos.flush();
41 fos.close();
42 }
43 private static void DecFile(File encFile,File decFile)throws Exception{
44 if(!encFile.exists()) {
45 System.out.println("encrypt file not exixt");
46 }
47 if(!decFile.exists()) {
48 System.out.println("decrypt file created");
49 decFile.createNewFile();
50 }
51 InputStream fis=new FileInputStream(encFile);
52 OutputStream fos=new FileOutputStream(decFile);
53
54 while((dataOfFile=fis.read())>-1) {
55 fos.write(dataOfFile^numOfEncAndDec);
56 }
57 fis.close();
58 fos.flush();
59 fos.close();
60 }
61
62 }

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

浙公网安备 33010602011771号