日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

文件与流 课后作业

發布時間:2025/7/14 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 文件与流 课后作业 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、編寫一個程序,指定一個文件夾,能自動計算出其總容量
1
package 計算文件夾容量; 2 import java.io.File; 3 import java.util.ArrayList; 4 5 public class Size { 6 static long size=0; 7 private static ArrayList<String> filelist=new ArrayList<String>(); 8 public static void main(String[] args) { 9 Size s=new Size(); 10 String filePath="F:\\JAVA項目代碼"; 11 s.getFiles(filePath); 12 13 } 14 //通過遞歸得到某一路徑下所有的目錄及文件 15 void getFiles(String filePath) { 16 17 File root=new File(filePath); 18 File[] files=root.listFiles(); 19 for(File file:files) { 20 if(file.isDirectory()) { 21 getFiles(file.getAbsolutePath()); 22 filelist.add(file.getAbsolutePath()); 23 24 } 25 else { 26 size+=file.getAbsolutePath().length(); 27 } 28 } 29 System.out.println("大小是"+size); 30 31 } 32 } 33

運行截圖:

二、編寫一個文件加解密程序,通過命令行完成加解密工作
1
package 文件解密和加密操作; 2 3 import java.io.FileInputStream; 4 import java.io.FileOutputStream; 5 import java.io.InputStream; 6 import java.io.OutputStream; 7 import java.security.Key; 8 import java.security.SecureRandom; 9 10 import javax.crypto.Cipher; 11 import javax.crypto.CipherInputStream; 12 import javax.crypto.CipherOutputStream; 13 import javax.crypto.KeyGenerator; 14 15 public class FileCode { 16 Key key; 17 public FileCode(String str) { 18 getKey(str);//生成密匙 19 } 20 /** 21 * 根據參數生成KEY 22 */ 23 public void getKey(String strKey) { 24 try { 25 KeyGenerator _generator = KeyGenerator.getInstance("DES"); 26 _generator.init(new SecureRandom(strKey.getBytes())); 27 this.key = _generator.generateKey(); 28 _generator = null; 29 } catch (Exception e) { 30 throw new RuntimeException("Error initializing SqlMap class. Cause: " + e); 31 } 32 } 33 34 /** 35 * 文件file進行加密并保存目標文件destFile中 36 * 37 * @param file 要加密的文件 如c:/test/srcFile.txt 38 * @param destFile 加密后存放的文件名 如c:/加密后文件.txt 39 */ 40 public void encrypt(String file, String destFile) throws Exception { 41 Cipher cipher = Cipher.getInstance("DES"); 42 // cipher.init(Cipher.ENCRYPT_MODE, getKey()); 43 cipher.init(Cipher.ENCRYPT_MODE, this.key); 44 InputStream is = new FileInputStream(file); 45 OutputStream out = new FileOutputStream(destFile); 46 CipherInputStream cis = new CipherInputStream(is, cipher); 47 byte[] buffer = new byte[1024]; 48 int r; 49 while ((r = cis.read(buffer)) > 0) { 50 out.write(buffer, 0, r); 51 } 52 cis.close(); 53 is.close(); 54 out.close(); 55 } 56 /** 57 * 文件采用DES算法解密文件 58 * 59 * @param file 已加密的文件 如c:/加密后文件.txt 60 * * @param destFile 61 * 解密后存放的文件名 如c:/ test/解密后文件.txt 62 */ 63 public void decrypt(String file, String dest) throws Exception { 64 Cipher cipher = Cipher.getInstance("DES"); 65 cipher.init(Cipher.DECRYPT_MODE, this.key); 66 InputStream is = new FileInputStream(file); 67 OutputStream out = new FileOutputStream(dest); 68 CipherOutputStream cos = new CipherOutputStream(out, cipher); 69 byte[] buffer = new byte[1024]; 70 int r; 71 while ((r = is.read(buffer)) >= 0) { 72 System.out.println(); 73 cos.write(buffer, 0, r); 74 } 75 cos.close(); 76 out.close(); 77 is.close(); 78 } 79 public static void main(String[] args){ 80 FileCode td = new FileCode("aaa"); 81 /* try { 82 td.encrypt("F:\\測試加密.txt", "F:\\測試加密1.txt"); 83 } catch (Exception e) { 84 // TODO Auto-generated catch block 85 e.printStackTrace(); 86 } //加密 */ 87 try { 88 td.decrypt("F:\\測試加密1.txt", "F:\\測試加密2.txt"); 89 } catch (Exception e) { 90 // TODO Auto-generated catch block 91 e.printStackTrace(); 92 } //解密 93 94 } 95 }

運行截圖:

加密后,原本的文字會出現亂碼。解密后,恢復正常。為了觀察方便,將文件保存在多個文檔里。

三、編寫一個文件分割工具,能把一個大文件分割成多個小的文件
1
package 文件分割工具; 3 import java.io.File; 4 import java.io.FileInputStream; 5 import java.io.FileNotFoundException; 6 import java.io.FileOutputStream; 7 import java.io.IOException; 8 public class CutFile { 9 public static void main(String[] args) { 10 //調用cutFile()函數 傳人參數分別為 (原大文件,切割后存放的小文件的路徑,切割規定的內存大小) 11 cutFile("F:\\測試加密.txt", "F:",10 * 10 * 20); 12 } 13 14 private static void cutFile(String src, String endsrc, int num) { 15 FileInputStream fis = null; 16 File file = null; 17 try { 18 fis = new FileInputStream(src); 19 file = new File(src); 20 //創建規定大小的byte數組 21 byte[] b = new byte[num]; 22 int len = 0; 23 //name為以后的小文件命名做準備 24 int name = 1; 25 //遍歷將大文件讀入byte數組中,當byte數組讀滿后寫入對應的小文件中 26 while ((len = fis.read(b)) != -1) { 27 //分別找到原大文件的文件名和文件類型,為下面的小文件命名做準備 28 String name2 = file.getName(); 29 int lastIndexOf = name2.lastIndexOf("."); 30 String substring = name2.substring(0, lastIndexOf); 31 String substring2 = name2.substring(lastIndexOf, name2.length()); 32 FileOutputStream fos = new FileOutputStream(endsrc + "\\\\"+ substring + "-" + name + substring2); 33 //將byte數組寫入對應的小文件中 34 fos.write(b, 0, len); 35 //結束資源 36 fos.close(); 37 name++; 38 } 39 } catch (FileNotFoundException e) { 40 e.printStackTrace(); 41 } catch (IOException e) { 42 e.printStackTrace(); 43 } finally { 44 try { 45 if (fis != null) { 46 //結束資源 47 fis.close(); 48 } 49 } catch (IOException e) { 50 e.printStackTrace(); 51 } 52 } 53 } 54 }

運行截圖:

只寫了文件分割,還沒寫文件拼接。

?

?

?

?

轉載于:https://www.cnblogs.com/zmh-980509/p/9984093.html

總結

以上是生活随笔為你收集整理的文件与流 课后作业的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 久久久国产精品黄毛片 | 天堂网亚洲 | av在线看片 | 一区二区 亚洲 | 骚虎tv | 91久久精品视频 | 992tv在线影院 | 亚洲国产成人精品一区二区三区 | 免费看黄色片的网站 | 欧美成人精品一区二区三区 | 国产九色在线播放九色 | 嫩草影院在线免费观看 | 国产嫩bbwbbw高潮 | 夜夜夜撸 | 天天干天天操天天摸 | 国产剧情在线视频 | 久久精品99国产国产精 | 欧美午夜大片 | 中文字幕在线视频不卡 | 黄色大片网站 | 亚洲一区 在线播放 | 亚洲色图首页 | 国产人妻一区二区三区四区五区六 | 男人插入女人下面的视频 | 亚洲国产精品久久久久久 | av高清一区二区 | 亚洲熟女乱色一区二区三区久久久 | 国产高清在线视频观看 | 日韩精品免费电影 | 黄色免费在线观看视频 | 手机av资源 | 蜜乳av网站 | 免费视频爱爱太爽 | 清清草在线视频 | 日本久久久久久久久 | 一区二区三区四区视频在线观看 | 一区二区三区精 | 中国女人毛茸茸 | 日韩成人av网站 | 日韩电影一区二区三区四区 | 国产日产精品一区二区三区四区 | 狠狠的色 | 久久精品8 | 中文字幕一区二区三区日韩精品 | 精品伦精品一区二区三区视频 | 91视频最新地址 | 国产精品久久一区 | 最近最新最好看的2019 | 手机av在线 | 日韩少妇一区二区 | 国产欧美日韩高清 | 国产精品老熟女视频一区二区 | av网在线 | 亚洲AV成人无码一二三区在线 | 国产aaa大片| www.在线| 国内精品99 | 日韩免费黄色片 | 黄网站欧美内射 | 中文字幕一区二区三区夫目前犯 | 一个人看的www片免费高清中文 | 宅男午夜在线 | 国产精品入口a级 | 葵司一区二区 | 香蕉视频免费网站 | 国产麻豆剧传媒精品国产av | 免费成人激情视频 | 最新av在线播放 | 上海贵妇尝试黑人洋吊 | 4438全国最大成人网 | 久久久91 | 侵犯女教师一区二区三区 | 永久免费看片在线观看 | 国产成人精品亚洲 | 青青久久av北条麻妃黑人 | 黄色av高清| 亚洲一区偷拍 | julia一区二区中文久久97 | 精品国产视频一区二区三区 | 欧美一区二区三区免费视频 | 在线观看免费日韩av | 新婚若妻侵犯中文字幕 | 一区二区在线视频观看 | 69sex久久精品国产麻豆 | 激情视频激情小说 | 欧美人妻精品一区二区三区 | 亚洲免费精品视频在线观看 | 国产成人av免费观看 | 一区二区在线精品 | 亚洲美女综合网 | 在线视频中文字幕 | 亚洲视频日韩 | 亚洲av日韩av不卡在线观看 | 操操日日 | 9999av | 国产白浆视频 | 精品一区二区久久久久蜜桃 | 一区精品视频在线观看 | 在线视频第一页 |