zoukankan      html  css  js  c++  java
  • Java学习---流与文件

    实验10  流与文件操作

    一、实验目的

    理解和掌握JAVA程序中实现输入/输出的技术和有关的类与方法。

    二、实验要求

    1. 掌握File类常用的方法
    2. 掌握标准数据流及Scanner类的应用。
    3. 掌握文件输入输出流使用
    4. 掌握数据输入输出流使用
    5. 了解对象流的使用。

    三、实验内容

    (一) 使用File类,测试文件与文件夹属性

    1.测试理解File

    package FileTest1;
    
    import java.io.*;
    
    public class TestFile1 {
    
        public static void main(String args[]) {
    
           // 磁盘上已有文件的测试(查磁盘上的文件与文件夹,替换下列文件夹与文件名)
    
           File f1 = new File("C:\WINDOWS", "win.ini");
    
           System.out.println("文件win.ini存在吗:" + f1.exists());
    
           System.out.println("文件win.ini是可读的吗:" + f1.canRead());
    
           System.out.println("文件win.ini是可写的吗:" + f1.canWrite());
    
           System.out.println("文件win.ini是隐藏的文件吗:" + f1.isHidden());
    
           System.out.println("文件win.ini的绝对路径:" + f1.getAbsolutePath());
    
           System.out.println("文件win.ini的路径:" + f1.getPath());
    
           System.out.println("文件win.ini的文件名:" + f1.getName());
    
           System.out.println("文件win.ini的长度:" + f1.length());
    
           System.out.println("文件win.ini的最后修改时间(长整形):" + f1.lastModified());
    
    
    
           File f2 = new File("C:\WINDOWS");
    
           System.out.println("目录C:\WINDOWS:存在吗:" + f2.exists());
    
           System.out.println("C:\WINDOWS:是目录吗?" + f2.isDirectory());
    
           System.out.println("C:\WINDOWS:是文件吗?" + f2.isFile());
    
           System.out
    
                   .println("----------------------------------------------------------------------");
    
           File fileName[] = f2.listFiles();
    
           for (int i = 0; i < fileName.length; i++) {
    
                if (fileName[i].isFile())
    
                  System.out.println("文  件  名  称:" + fileName[i].getName());
    
               else
    
                  System.out.println("文件夹名称:" + fileName[i].getName());
    
           }
    
           System.out
    
                   .println("----------------------------------------------------------------------");
    
           String fileNameStr[] = f2.list();
    
           for (int i = 0; i < fileName.length; i++) {
    
               System.out.println("文件(夹)名称:" + fileNameStr[i]);
    
           }
    
           System.out
    
                   .println("----------------------------------------------------------------------");
    
    
    
           // 磁盘上没有的文件夹的测试
    
           File f3 = new File("E:\8000");
    
           System.out.println("目录E:\8000存在吗:" + f3.exists());
    
           f3.mkdir();
    
           System.out.println("目录E:\8000存在吗:" + f3.exists());
    
           f3.delete();
    
           System.out.println("目录E:\8000存在吗:" + f3.exists());
    
    
    
           // 磁盘上没有的文件的测试
    
           File f4 = new File("E:\9000");
    
           if (!f4.exists())
    
               f4.mkdir();
    
           File f5 = new File(f4, "abc.txt");
    
           System.out.println("文件abc.txt存在吗?:" + f5.exists());
    
           try {
    
               if (!f5.exists())
    
                  f5.createNewFile();
    
               System.out.println("文件abc.txt存在吗?:" + f5.exists());
    
           } catch (IOException e) {
    
               System.out.println("异常" + e);
    
           }
    
        }
    
    }
    
    2.测试可执行文件
    
    package FileTest1;
    
    import java.io.*;
    
    public class TestFile2 {
    
        public static void main(String args[]) {
    
           try {
    
               Runtime ce = Runtime.getRuntime();
    
               File file = new File("c:/windows", "Notepad.exe");
    
               ce.exec(file.getAbsolutePath());
    
           } catch (Exception e) {
    
               System.out.println(e);
    
           }
    
        }
    
    }

    (二) 编程

    1. 编程:使用Scanner类从键盘输入10个int类型的数,求累加和和平均值。
    2. import java.util.Scanner;
      
      public class 二1 {
      
          public static void main(String[] args) {
              // TODO Auto-generated method stub
              System.out.println("请输入10个数");
              Scanner in = new Scanner(System.in);
              int sum=0;
              for(int i=1;i<=10;i++)
              {
                  sum+=in.nextInt();
              }
              System.out.println("和为:"+ sum+"
      平均数为:"+sum*1.0/10);
              
          }
      
      }
    3. 将保存在本地机当前文件夹中的文本文件的内容在屏幕上显示出来,然后将其另存为 另一个文件。
    import java.io.*;
    
    public class 二2 {
    
        public static void main(String[] args) throws IOException {
            // TODO Auto-generated method stub
            FileInputStream rf = new FileInputStream("C:\WINDOWS\win.ini");
            FileOutputStream wf = new FileOutputStream("C:\CYS\cys.txt");
            int n=1000;
            byte buffer[] = new byte[n];
            while((rf.read(buffer,0,n)!=-1)&&(n>0))
            {
                System.out.println(new String(buffer));
                wf.write(buffer,0,buffer.length);
            }
            System.out.println();
            rf.close();
            wf.close();
            
        }
    
    }
  • 相关阅读:
    html大文件传输技术
    html大文件传输实例解析
    html大文件传输示例
    ckeditor粘贴word图片自动上传功能
    ckeditor不能粘贴word的问题
    ckeditor不能粘贴word的问题如何解决
    vue-ckeditor-word粘贴
    vue中使用ckeditor,支持wps,word,网页粘贴
    富文本编辑器复制word
    富文本编辑器粘贴word
  • 原文地址:https://www.cnblogs.com/caiyishuai/p/13270838.html
Copyright © 2011-2022 走看看