java文件综合训练

来源:互联网 发布:ubuntu 安装php7 编辑:程序博客网 时间:2024/05/01 22:18

     文件的操作,本程序中共包含三个处理方法分别是FILEOUTPUT(读取文件)  FILEINPUT(输入文件)  和 CREATEFILE(创建文件)以及DEALFILE(文件的删除和查询)

其中包括一些方法  取路径 取输入数据

package FILE1;

import java.io.*;

import java.util.Scanner;

public class FILE2 {

 

        public static void main(String[] args) {

         

                     JMSHOW();

                   

        }

     

        

        public static String LUJING()  //路径选择

                   {

                            String str=null;

                            System.out.println("请输入你要使用的路径");

                            

                            Scanner scanner=new Scanner(System.in);

                            

                            str=scanner.next();

                            

                            return str;

                   }

        

        public static   voidJMSHOW()   //界面显示

        {

            SHOW();

           

            Scannerscanner =new Scanner(System.in);

                  

           int i= scanner.nextInt();

         

           switch(i)

           {

           case 1:{CREATEFILE   createfile=new CREATEFILE(LUJING()); JMSHOW();} break;//创建文件

                    

           case2:{FILEINPUT   input =newFILEINPUT(LUJING()); JMSHOW();} break ; //输入文件

                    

           case 3:{FILEOUTPUT  output=new FILEOUTPUT(LUJING());JMSHOW();}  break; //读取文件

                  

           case 4:{DELETEFILE  information=new DELETEFILE();

                   information.SHOW2();      

                    

                 }break;

           case0:   System.exit(0);

                   

           default :

             {

                       System.out.println("你的输入有误,请认真阅读之后做出选择");

                       

                      

                       System.out.println();

                       JMSHOW();

              }break;

          

           }

         

          

        }

        public static void  SHOW()

        {

                  Stringstr="***************************************************";

                  String str1="<1>创建文件        <2>输入文件          <3>读取文件      <4>文件信息      <0>退出";

                  System.out.println(str);

                  System.out.println(str1);

                  System.out.println(str);

                  

                  

        }

        

        

}

 

class FILEOUTPUT               //读取文件

        //private String str="d:\\sgh.txt";

          FILEOUTPUT(){

                   

                    System.out.println("读取文件");

                   

          }

         FILEOUTPUT(String str)

         {

         FileInputStreamfis=null;   //申明流对象

    try

    {

            //创建流对象

             fis=newFileInputStream(str);

             //读取数据 并将数据存储在数组中

             

             byte []data=new byte[1024];

             

             int i=0; //当前下标

             

             //读取流中的第一个字节数据

             

             int n=fis.read();

             

             //一次读取后续数据

             

             while(n!=-1)

             {

                       data[i]=(byte)n;

                       

                       i++;

                       

                       //读取下一个数据

                       n=fis.read();

                       

             }

             

             //解析数据

             

             String  s =newString(data,0,i);

             

             //输出字符串

             System.out.println("正在输出                 "+str+"   路径中的数据");

             System.out.println();

             System.out.println("********************************");

             System.out.println(s);

             System.out.println();

             

            

    }

    catch(Exception e)

    {

            

            e.printStackTrace();

    }

    

    finally

    {

            try

            {

                     fis.close();

            }

            catch(Exception e)

            {}

            

    }

}

 

}

class  FILEINPUT         //输入文件

        

         

         FILEINPUT()

         {

                   System.out.println("文件的输入");

         }

   FILEINPUT(String str)

    {

           String   str1=null;

           FileOutputStream output=null;

           try

           {

                     //建立流对象

                     

              output=new FileOutputStream(str);

              

              str1=NEIRONG(str);         //提取输入内容

              

              

              bytedata1[]=new byte[10240];

               

              data1=str1.getBytes();   //将字符串转换

              

            

              

              for(intj=0;j

              {

                

                output.write(data1[j]);

              

              }

              

           }

           catch(Exception e)

           {

                     e.printStackTrace();

           }

           finally

           {

                     try

                     {

                              output.close();

                              

                     }

                     catch(Exception e)

                     {}

                     

           }

    }

   

   public  String NEIRONG(String  str1)      //输入的内容

    {

           String  str;

           

           int   NUM=10240;

           

            System.out.println("请输入                 "+str1+"   路径中的数据");

       

       Scanner scanner=new Scanner(System.in);

        

        str=scanner.next();

        

        

           

        System.out.println("你输入的内容是");

        System.out.println(str);             

           return  str;

    }

 

}

 

class CREATEFILE          //创建文件

{

   CREATEFILE()

    {

           System.out.println("文件创建");

           

           

    }

   CREATEFILE(String  str)

    {

           File file=new File(str);

           

           if(file.exists()==false)

    {

                     try

                     {

                     

                file.createNewFile();

                System.out.println("创建文件成功");

                     }

                     catch(Exception e)

                     {

                              System.out.println("创建失败");

                             e.printStackTrace();

                              

                     }

           

                     

           

    }

           else

           {

                     System.out.println("创建失败,可能是该目录下有该文件");

                     

           }

           

    }

   

}

 

class  DELETEFILE  extends FILE2          //删除文件以及查看文件

 

{

        

      DELETEFILE()

      {

              System.out.println("文件的删除和查询");

              

      }

  

      public static void SHOW1()

     {

             String str="**********************************";

             System.out.println(str);

             

             System.out.println("<1>查询文件   <2>删除文件    <3>返回上一目录  <0>退出");

             System.out.println(str);

     }

      public static void SHOW2()

      {

              SHOW1();

             File f=null;

             

        Scanner scanner=new Scanner(System.in);

       

      int i=scanner.nextInt();

      if(i==3)

      {

              JMSHOW();

              

      }

      else

      {

         f=new File(LUJING());

        switch(i)

        {

        case 1:  {printlALL(f); SHOW2();}break;

        case 2:  { deleteALL(f);SHOW2();}break;

        

        case 0:  System.exit(0);

        default:  {

                       System.out.println("你的输入有误,请认真阅读之后做出选择");

                       

                               

                       System.out.println();

                       SHOW2();

              }break;

           

    }

      }

     }

   

            

                  

                           

        

                  

                  

                  

                  public static void printlALL(File f)

                  {

                           //打印当前文件名

                           System.out.println( "文件有"+f.getName());

                           //是否是文件夹

                           if(f.isDirectory())

                           {

                                    //获取该文件夹下所有子文件和子文件夹

                                    File []f1 =f.listFiles();

                                    

                                    int len=f1.length;

                                    for(int i=0;i

                                    {

                                              

                                              printlALL(f1[i]);

                                    }

                                    

                           }

                  }

                  public static void deleteALL(File f)

                  {

                           if(f.isFile())

                           {

                                    f.delete();

                                    System.out.println("删除成功");

                                    

                           }

                           else

                           {

                                    File f1[]=f.listFiles();

                                    

                                    int len=f1.length;

                                    

                                    for(int i=0;i

                                    {

                                              deleteALL(f1[i]);

                                              

                                    }

                                    

                                    f.delete();

                                    

                                    System.out.println("删除成功");

                           }

                           

                  }

 

        }

 

    java文件综合训练

java文件综合训练
                                              运行结果
                

        

    本人水平有限,有不足之处还请见谅。

0 0
原创粉丝点击