IO操作

1、有5个学生,每个学生有三门课的成绩,从键盘输入以上数据(学生号,姓名,三门课的成绩),计算出平均成绩,将上述数据存放在文件”stud”中

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;

/**
 * 学生信息录入并存放在文件中
 * @author  努力Coding
 * @version
 * @data    2020年2月20日
 */
public class Main {

    public static void main(String[] args) throws IOException {
        Scanner input = new Scanner(System.in);
        Student stu = new Student();//创建学生对象
        StringBuffer content = new StringBuffer();//字符串拼接
        FileWriter writer = new FileWriter("stud.txt",true);//创建文件
        BufferedWriter bwriter = new BufferedWriter(writer);//使用缓存

        //循环输入学生信息并拼接
        content.append("姓名\t" + "学号\t" + "课1成绩\t" + "课2成绩\t" + "课3成绩\t" + "平均成绩\n");
        for(int i = 0; i < 5; i++) {
            System.out.println("&#x7B2C;" + (i + 1) + "&#x4F4D;&#x5B66;&#x751F;&#x4FE1;&#x606F;&#x5F55;&#x5165;-----------------------");
            System.out.println("&#x8BF7;&#x8F93;&#x5165;&#x5B66;&#x751F;&#x59D3;&#x540D;&#xFF1A;");
            stu.setName(input.next());
            content.append(stu.getName()).append("\t");
            System.out.println("&#x8F93;&#x5165;&#x5B66;&#x53F7;&#xFF1A;");
            stu.setStuId(input.nextLong());
            content.append(stu.getStuId()).append("\t");
            System.out.println("&#x8F93;&#x5165;&#x8BFE;1&#x7684;&#x6210;&#x7EE9;&#xFF1A;");
            stu.setScore1(input.nextDouble());
            content.append(stu.getScore1()).append("\t");
            System.out.println("&#x8F93;&#x5165;&#x8BFE;2&#x7684;&#x6210;&#x7EE9;&#xFF1A;");
            stu.setScore2(input.nextDouble());
            content.append(stu.getScore2()).append("\t");
            System.out.println("&#x8F93;&#x5165;&#x8BFE;3&#x7684;&#x6210;&#x7EE9;&#xFF1A;");
            stu.setScore3(input.nextDouble());
            content.append(stu.getScore3()).append("\t");
            double ave = (stu.getScore1() + stu.getScore2() + stu.getScore3()) / 3;
            content.append(ave).append("\n");
        }
        System.out.println(content);//&#x63A7;&#x5236;&#x53F0;&#x6253;&#x5370;
        writer.write(content.toString());//&#x5199;&#x5165;&#x6587;&#x4EF6;stud.txt&#x4E2D;
        bwriter.flush();//&#x5F3A;&#x5236;&#x8F93;&#x51FA;&#x7F13;&#x5B58;&#x4E2D;&#x7684;&#x5185;&#x5BB9;
        bwriter.close();//&#x5173;&#x95ED;&#x6D41;
        writer.close();
        input.close();
    }

}

/**
 * &#x5B66;&#x751F;&#x7C7B;
 * @author  &#x52AA;&#x529B;Coding
 * @version
 * @data    2020&#x5E74;2&#x6708;20&#x65E5;
 */
public class Student {
    private long stuId;//&#x5B66;&#x53F7;
    private String name;//&#x540D;&#x5B57;
    private double score1;//&#x8BFE;1&#x6210;&#x7EE9;
    private double score2;//&#x8BFE;2&#x6210;&#x7EE9;
    private double score3;//&#x8BFE;3&#x6210;&#x7EE9;

    public long getStuId() {
        return stuId;
    }
    public void setStuId(long stuId) {
        this.stuId = stuId;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public double getScore1() {
        return score1;
    }
    public void setScore1(double score1) {
        this.score1 = score1;
    }
    public double getScore2() {
        return score2;
    }
    public void setScore2(double score2) {
        this.score2 = score2;
    }
    public double getScore3() {
        return score3;
    }
    public void setScore3(double score3) {
        this.score3 = score3;
    }

}

2、实现文件拷贝功能

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.util.Scanner;

/**
 * &#x6587;&#x4EF6;&#x62F7;&#x8D1D;:&#x6E90;&#x6587;&#x4EF6;&#x540D;&#x548C;&#x76EE;&#x6807;&#x6587;&#x4EF6;&#x540D;&#x7531;&#x63A7;&#x5236;&#x53F0;&#x53C2;&#x6570;&#x4F20;&#x5165;
 * @author  &#x52AA;&#x529B;Coding
 * @version
 * @data    2020&#x5E74;2&#x6708;20&#x65E5;
 */
public class CopyDemo {
    public static void main(String[] args) throws IOException {
        Scanner input = new Scanner(System.in);
        System.out.println("&#x8BF7;&#x8F93;&#x5165;&#x6E90;&#x6587;&#x4EF6;&#x7684;&#x540D;&#x79F0;&#xFF1A;");
        File sourceFile = new File(input.next());//&#x6E90;&#x6587;&#x4EF6;

        System.out.println("&#x8BF7;&#x8F93;&#x5165;&#x76EE;&#x6807;&#x6587;&#x4EF6;&#x7684;&#x540D;&#x79F0;&#xFF1A;");
        File finalFile = new File(input.next());//&#x76EE;&#x6807;&#x6587;&#x4EF6;

        InputStream inStream = new FileInputStream(sourceFile);//&#x8F93;&#x5165;&#x6D41;
        OutputStream outStream = new FileOutputStream(finalFile);//&#x8F93;&#x51FA;&#x6D41;

        int copyFile;//&#x590D;&#x5236;&#x6587;&#x4EF6;&#x5185;&#x5BB9;
        while((copyFile = inStream.read()) != -1) {
            outStream.write(copyFile);
        }
        System.out.println("&#x6E90;&#x6587;&#x4EF6;&#x540D;&#x4E3A;&#xFF1A;" + sourceFile.getName());//&#x6253;&#x5370;&#x6587;&#x4EF6;&#x540D;
        System.out.println("&#x76EE;&#x6807;&#x6587;&#x4EF6;&#x540D;&#x4E3A;&#xFF1A;" + finalFile.getName());//&#x6253;&#x5370;&#x6587;&#x4EF6;&#x540D;
    }
}

3、从键盘输入字母,将其存储到文件中,对其升序排序后,再存储到另一个文件中,并打印出来

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;

/**
 * &#x4ECE;&#x952E;&#x76D8;&#x952E;&#x5165;&#x4E00;&#x7CFB;&#x5217;&#x7684;&#x5B57;&#x6BCD;&#xFF0C;&#x5B58;&#x50A8;&#x5230;&#x6587;&#x4EF6;&#x4E2D;&#xFF1B;
 * &#x5347;&#x5E8F;&#x6392;&#x5E8F;&#x540E;&#xFF0C;&#x518D;&#x5B58;&#x50A8;&#x5230;&#x53E6;&#x4E00;&#x4E2A;&#x6587;&#x4EF6;&#x4E2D;&#xFF1B;
 * &#x5E76;&#x663E;&#x793A;&#x51FA;&#x6765;
 * @author  &#x52AA;&#x529B;Coding
 * @version
 * @data    2020&#x5E74;2&#x6708;20&#x65E5;
 */
public class SortDemo {

    public static void main(String[] args) throws IOException{
        Scanner input = new Scanner(System.in);
        List<string> list = new ArrayList<string>();//&#x96C6;&#x5408;

        FileWriter writer = new FileWriter("beforeSort.txt",true);
        BufferedWriter bWriter = new BufferedWriter(writer);

        System.out.println("&#x8BF7;&#x95EE;&#x4F60;&#x8981;&#x8F93;&#x5165;&#x51E0;&#x4E2A;&#x5B57;&#x6BCD;&#xFF1A;");
        int word = input.nextInt();
        for(int i = 0; i < word; i++) {
            System.out.println("&#x8BF7;&#x8F93;&#x5165;&#x7B2C;" + (i + 1) + "&#x4E2A;&#x5B57;&#x6BCD;&#xFF1A;");
            list.add(input.next());//&#x4E3A;&#x96C6;&#x5408;&#x6DFB;&#x52A0;&#x5143;&#x7D20;
        }

        for(int i = 0; i < list.size(); i++) {
            writer.write(list.get(i));  //&#x83B7;&#x53D6;&#x96C6;&#x5408;&#x4E2D;&#x7684;&#x5143;&#x7D20;
        }
        System.out.println("&#x6392;&#x5E8F;&#x524D;&#xFF1A;" + list);

        Collections.sort(list);//&#x5229;&#x7528;&#x96C6;&#x5408;&#x5DE5;&#x5177;&#x7C7B;&#x8FDB;&#x884C;&#x6392;&#x5E8F;

        FileWriter writer1 = new FileWriter("afterSort.txt",true);
        BufferedWriter bWriter1 = new BufferedWriter(writer1);

        for(int i = 0; i < list.size(); i++) {
            writer1.write(list.get(i)); //&#x83B7;&#x53D6;&#x6392;&#x5E8F;&#x540E;&#x7684;&#x96C6;&#x5408;&#x5143;&#x7D20;
        }
        System.out.println("&#x6392;&#x5E8F;&#x540E;&#xFF1A;" +list);

        bWriter.flush();//&#x5F3A;&#x5236;&#x8F93;&#x51FA;&#x7F13;&#x5B58;&#x4E2D;&#x7684;&#x5185;&#x5BB9;
        bWriter1.flush();//&#x5F3A;&#x5236;&#x8F93;&#x51FA;&#x7F13;&#x5B58;&#x4E2D;&#x7684;&#x5185;&#x5BB9;
        bWriter.close();//&#x5173;&#x95ED;&#x6D41;
        bWriter1.close();//&#x5173;&#x95ED;&#x6D41;
        input.close();//&#x5173;&#x95ED;&#x8F93;&#x5165;
    }
}

</string></string>

Original: https://www.cnblogs.com/Zhouge6/p/12337550.html
Author: 笔架山Code
Title: IO操作

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/573654/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球