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)

大家都在看

  • 分布式搜索引擎–02

    1.DSL查询文档 elasticsearch的查询依然是基于JSON风格的DSL来实现的。 1.1.DSL查询分类 Elasticsearch提供了基于JSON的DSL(Doma…

    Java 2023年6月9日
    063
  • SpringMVC学习笔记

    本文转载自尚硅谷杨博超老师的笔记,视频链接–>哔哩哔哩 一、SpringMVC简介 1、什么是MVC MVC是一种软件架构的思想,将软件按照模型、视图、控制器来划…

    Java 2023年6月8日
    085
  • JNI C反射调用java方法

    ④通过对象调用方法,可以调用空参数方法,也可以调用有参数方法,并且将参数通过调用的方法传入(void (CallVoidMethod)(JNIEnv, jobject, jmeth…

    Java 2023年5月29日
    089
  • 06、SpringBoot 启动 准备运行环境(prepareEnvironment)流程(三)

    目录:Springboot源码学习目录上文:05、SpringBoot 启动 准备运行环境(prepareEnvironment)流程(二)前言:终于把配置文件解析这一部分搞定了,…

    Java 2023年6月13日
    081
  • UML的四种关系

    (1)泛化关系 (2)实现关系 (3)依赖关系 (4)关联关系 (5)聚合关系 (6)组合关系 (1)泛化关系 泛化(generalization)关系是一个类(称为子类、子接口)…

    Java 2023年6月5日
    099
  • mybatis 报错:Caused by: org.apache.ibatis.binding.BindingException: Parameter ” not found

    问题描述: Caused by: org.apache.ibatis.binding.BindingException: Parameter ” not found 问…

    Java 2023年5月30日
    072
  • svg–动画-进度条

    html;gutter:true; Document</p> <pre><code>.container { border: 1px solid…

    Java 2023年5月29日
    058
  • 【Java】类加载过程

    JVM把class文件加载到内存,并对数据进行校验、解析和初始化,最终形成JVM可以直接使用的Java类型的过程。 类加载的过程主要分为三个部分: 加载 链接 初始化 而链接又可以…

    Java 2023年5月29日
    075
  • 吊炸天,Spring Security还有这种用法!

    在用Spring Security项目开发中,有时候需要放通某一个接口时,我们需要在配置中把接口地址配置上,这样做有时候显得麻烦,而且不够优雅。我们能不能通过一个注解的方式,在需要…

    Java 2023年6月8日
    064
  • rocketmq延时消息

    rocketmq提供一种延时消息的解决方案,就是在特定的时间到了,消息才会被投递出去供 consumer消费。 总体来是简单的场景是满足了,但是需要注意的是延时的时间是需要按照默认…

    Java 2023年6月16日
    095
  • Java调用阿里云OSS下载文件

    1、准备工作 2、项目需求 首先需要引入阿里云的依赖包,如下所示: 如果只是想将oss文件下载到服务器的磁盘里面,可以使用下面的案例。需要注意的就是OSS的文件目录下面的文件,指定…

    Java 2023年5月29日
    089
  • 面向对象-中级篇

    public class Test { public static void main(String[] args) { Person[] person = new Person[…

    Java 2023年6月16日
    079
  • Vulnhub-DC-5靶机实战

    前言 靶机下载地址:https://www.vulnhub.com/entry/dc-5,314/ KALI地址:192.168.16.109靶机地址:192.168.16.1 一…

    Java 2023年6月13日
    087
  • C语言-字符串函数的实现(一)之strlen

    C语言中的字符串函数有如下这些 获取字符串长度 strlen 长度不受限制的字符串函数 strcpy strcat strcmp 长度受限制的字符串函数 strncpy strnc…

    Java 2023年6月10日
    047
  • spring*.xml配置文件明文加密

    系统架构:spring+mvc(Oracle是用jdbc自己封装的接口) 1.数据库配置文件加密 原xml配置 ….. 加密实现过程 思路:继承DruidDataSource,…

    Java 2023年6月8日
    081
  • Mysql 日期格式化 复杂日期区间查询

    最近在做项目涉及到 Mysql的复杂日期查询,日期查询其实在数据库中查询其实还是用的挺多的,比如查询开始日期到结束日期的区间信息,查询日期小于有效日期的信息,查询当天的日期,明天的…

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