zoukankan      html  css  js  c++  java
  • PPT文件作业

    1

    .

    System.out.println("请输入文件夹的地址: ");
            String address;
            Scanner sc=new Scanner(System.in);
            address=sc.nextLine();
            File folder=new File(address);
            int sum=0;
            if(!folder.exists())
            {
                System.out.println("文件夹不存在!");
            }
            else
            {
                File[] fileArray=folder.listFiles();
                byte[] bytes=new byte[1024];
                int i;
    
                for(i=0;i<fileArray.length;i++)
                {
                    int num;
                    FileInputStream filereader=new FileInputStream(fileArray[i]);
                    while((num=filereader.read(bytes))!=-1)
                    {
                        sum=sum+num;
                    }
                    filereader.close();
                }
            }
            
            System.out.println("文件夹的容量为:"+sum+"字节");

    运行结果

     

     

     2.

            System.out.println("请输入文件的地址: ");
            String address;
            Scanner sc=new Scanner(System.in);
            address=sc.nextLine();
            File file=new File(address);
            int sum=0;
            String strall="";
            if(!file.exists())
            {
                System.out.println("文件不存在!");
            }
            else
            {
                byte[] bytes=new byte[1024];
                int i;
                int num; 
                FileInputStream filereader=new FileInputStream(file);
                System.out.println("1.加密文件\n2.解密文件\n");
                int flag=0;
                flag=sc.nextInt();
                if(flag==1)
                {
                    while((num=filereader.read(bytes))!=-1)
                    {
                        byte[] bytess=new byte[1024];
                        for(int j=0;j<num;j++)
                        {
                            bytess[j]=(byte) (bytes[j]+1);
                        }
                        String str=new String(bytess,0,num,"GBK");
                        strall=strall+str;
                    }
                    FileOutputStream filewriter=new FileOutputStream(file);
                    filewriter.write(strall.getBytes());
                    filereader.close();
                    filewriter.close();
                    System.out.println("加密完成!");
                }
                if(flag==2)
                {
                    while((num=filereader.read(bytes))!=-1)
                    {
                        byte[] bytess=new byte[1024];
                        for(int j=0;j<num;j++)
                        {
                            bytess[j]=(byte) (bytes[j]-1);
                        }
                        String str=new String(bytess,0,num,"GBK");
                        strall=strall+str;
                    }
                    FileOutputStream filewriter=new FileOutputStream(file);
                    filewriter.write(strall.getBytes());
                    filereader.close();
                    filewriter.close();
                    System.out.println("解密完成!");
                }
            }

     文件未加密前:

    加密后

     文件解密:

     3.

    System.out.println("1.分解文件。2.合并文件");
            Scanner sc=new Scanner(System.in);
            int FLAG=0;
            FLAG=sc.nextInt();
            if(FLAG==1)
            {
                System.out.println("请输入要分解的文件地址: ");
                String address;    
                address=sc.next();
                File file=new File(address);
                int sum=0;
                System.out.println("请输入文件分解后保存地址:");
                String add;
                add=sc.next();
                if(!file.exists())
                {
                    System.out.println("文件不存在!");
                }
                else
                {
                    byte[] bytes=new byte[1024];
                    int i;
                    int num=0; 
                    int flag=0;
                    FileInputStream filereader=new FileInputStream(file);
                    for(i=1;num!=-1;i++)
                    {
                        String strall="";
                        while((num=filereader.read(bytes))!=-1&&flag<512)
                        {
                            String str=new String(bytes,0,num);
                            strall=strall+str;
                            flag++;
                        }
                        String Add=add+"\\"+"file"+i+".txt";
                        File fileadd=new File(Add);
                        FileOutputStream filewriter=new FileOutputStream(fileadd);
                        filewriter.write(strall.getBytes());
                        filewriter.close();
                        flag=0;
                    }
                    filereader.close();
                    System.out.println("分解完成!");
                }
            }
            if(FLAG==2)
            {
                System.out.println("请输入合并后的文件地址:");
                String Straddress;
                Straddress=sc.next();
                File file=new File(Straddress);
                System.out.println("请输入要合并的文件数量:");
                int num=0;
                num=sc.nextInt();
                String[] straddress=new String[num];
                System.out.println("请依次输入文件地址:");
                for(int i=0;i<num;i++)
                {
                    straddress[i]=sc.next();
                }
                File[] files=new File[num];
                for(int i=0;i<num;i++)
                {
                    files[i]=new File(straddress[i]); 
                }
                FileOutputStream filewriter=new FileOutputStream(file,true);
                for(int i=0;i<num;i++)
                {
                    int numm;
                    FileInputStream filereader=new FileInputStream(files[i]);
                    byte[] bytes=new byte[1024];
                    String strall="";
                    while((numm=filereader.read(bytes))!=-1)
                    {
                        String str=new String(bytes,0,numm);
                        strall=strall+str;
                    }
                    filewriter.write(strall.getBytes());
                    filereader.close();
                }
                filewriter.close();
                System.out.println("合并成功!");
            }

    分解前:

     分解后:

     合并后:

  • 相关阅读:
    面试题
    iOS 两种方法实现左右滑动出现侧边菜单栏 slide view
    进程、线程、多线程相关总结
    iOS开发
    播放 视频
    delphi控件属性大全-详解-简介
    Cxgrid获取选中行列,排序规则,当前正在编辑的单元格内的值
    FastReport 使用说明
    delphi的取整函数round、trunc、ceil和floor
    cxGrid 速度
  • 原文地址:https://www.cnblogs.com/fengchuiguobanxia/p/13934306.html
Copyright © 2011-2022 走看看