java 文件io操作_Java学习-文件IO操作

1 packageIOTest;2

3 importjava.io.File;4 importjava.io.FileInputStream;5 importjava.io.FileNotFoundException;6 importjava.io.FileOutputStream;7 importjava.io.FileReader;8 importjava.io.FileWriter;9 importjava.io.IOException;10

11 public classtestStream {12

13 public static voidencodeFile(File encodingFile, File encodedFile) {14 //all数组承接encoding File数据

15 char all[] = new char[(int) encodingFile.length()];16 try (FileReader fr = newFileReader(encodingFile)) {17 fr.read(all);18 } catch(FileNotFoundException e) {19 //TODO Auto-generated catch block

20 e.printStackTrace();21 } catch(IOException e1) {22 //TODO Auto-generated catch block

23 e1.printStackTrace();24 }25 //加密过程

26 for (int i = 0; i < all.length; i++) {27 if (all[i] >= '0' && all[i] < '9') {28 all[i] = (char) (all[i] + 1);29 continue;30 }31 if (all[i] == '9') {32 all[i] = '0';33 continue;34 }35 if (all[i] >= 'a' && all[i] <= 'y' || all[i] >= 'A' && all[i] <= 'Y') {36 all[i] = (char) (all[i] + 1);37 continue;38 }39 if (all[i] == 'z') {40 all[i] = 'a';41 continue;42 }43 if (all[i] == 'Z') {44 all[i] = 'A';45 continue;46 }47 }48 //把all数组写入encoded File

49 try (FileWriter fw = newFileWriter(encodedFile)) {50 fw.write(all);51 } catch(IOException e) {52 e.printStackTrace();53 }54

55 }56 public static voiddecodeFile(File decodingFile, File decodedFile){57 char all[] = new char[(int) decodingFile.length()];58 try (FileReader fr = newFileReader(decodingFile)) {59 fr.read(all);60 } catch(FileNotFoundException e) {61 //TODO Auto-generated catch block

62 e.printStackTrace();63 } catch(IOException e1) {64 //TODO Auto-generated catch block

65 e1.printStackTrace();66 }67 //解密过程

68 for (int i = 0; i < all.length; i++) {69 if (all[i] >= '1' && all[i] <= '9') {70 all[i] = (char) (all[i] - 1);71 continue;72 }73 if (all[i] == '0') {74 all[i] = '9';75 continue;76 }77 if (all[i] >= 'b' && all[i] <= 'z' || all[i] >= 'B' && all[i] <= 'Z') {78 all[i] = (char) (all[i] - 1);79 continue;80 }81 if (all[i] == 'a') {82 all[i] = 'z';83 continue;84 }85 if (all[i] == 'A') {86 all[i] = 'Z';87 continue;88 }89 }90 try(FileWriter fw=newFileWriter(decodedFile)) {91 fw.write(all);92 } catch(IOException e) {93 //TODO Auto-generated catch block

94 e.printStackTrace();95 }96 }97 public static void main(String[] args) throwsIOException {98 File f1 = new File("d:/lol2.txt");99 FileReader fr1=newFileReader(f1);100

101 System.out.println("加密前的内容:");102 char [] originData=new char[(int) f1.length()];103 fr1.read(originData);104 for(charx:originData){105 System.out.print(x);106 }107 File f2 = new File("d:/加密后的文件.txt");108 encodeFile(f1, f2);109

110 FileReader fr2=newFileReader(f2);111 System.out.println("\n加密后的内容:");112 char [] encodedData=new char[(int) f2.length()];113 fr2.read(encodedData);114 for(charx:encodedData){115 System.out.print(x);116 }117

118 File f3=new File("d:/解密后的文件.txt");119 decodeFile(f2, f3);//解密

120

121 System.out.println("\n解密后的内容:");122 FileReader fr3=newFileReader(f3);123 char []data=new char[(int) f3.length()];124 fr3.read(data);125 for(charx:data){126 System.out.print(x);127 }128 }129 }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值