题目分析:

1.首先想到的是数组存放数据,数组肯定是String类型.

2.String类型的数组,5行6列.要把从第0行第2列到第4行第4列的数据取出转换成数值型,再统计三科总分.最后把计算出的总分转换成String类型放回数组的第5列.

3.将string类型的数组写入到文件,再从文件读出显示到控制台

遇到的困难:

1.反复的类型转换

  1. import java.io.File;
  2. import java.io.FileOutputStream;
  3. import java.io.FileReader;
  4. import java.io.OutputStream;
  5. import java.io.PrintStream;
  6. import java.util.Scanner;
  7. public class Test2 {
  8. public static void main(String[] args) throws Exception{
  9. float sum=0f;
  10. Scanner input=new Scanner(System.in);
  11. File f = new File("D:"+File.separator+"test.txt");
  12. PrintStream ps = new PrintStream(f);
  13. ps.println("姓名 学号 英语 计算机语言 数据库 总分");
  14. OutputStream out = new FileOutputStream(f,true);
  15. //用FileOutputSteam包装文件,并设置文件可追加
  16. String[][] stu=new String[5][6];
  17. float[][] score=new float[5][5];//接收各科分数
  18.  
  19. System.out.println("请依次输入学生的学号,姓名,英语,计算机语言和数据库的成绩");
  20. for(int i=0;i<5;i++){
  21. System.out.println("第"+(i+1)+"位:");
  22. for(int j=0;j<5;j++){
  23. stu[i][j]=input.nextLine(); //从键盘接收数据,以回车分隔
  24. }
  25. }
  26. for(int i=0;i<5;i++){
  27. for(int j=2;j<5;j++){
  28. score[i][j]=Float.parseFloat(stu[i][j]);//String类型转换为Float类型
  29. sum+=score[i][j];//总分
  30. }
  31. stu[i][5]=(String.valueOf(sum));//float类型转换为string类型放回String数组
  32. sum=0; //计算完一位同学的总分后清零
  33. }
  34. for(int i=0;i<5;i++){
  35. for(int j=0;j<6;j++){
  36. out.write(stu[i][j].getBytes()); //将String转换为byte类型,向文件中写入数据
  37. out.write('\t');//各数据之间的分隔,相当于tab
  38. }
  39. out.write('\r');//换行符
  40. }
  41. out.close(); //关闭输出流
  42. System.out.println("写入成功!");
  43.  
  44. FileReader fr = new FileReader("d:\\test.txt");
  45. char[] bchar= new char[1024];
  46. int len = 0;
  47. while((len = fr.read(bchar)) != -1){//直到文件读取结束
  48. System.out.print(new String(bchar,0,len));//输出文件所有内容
  49. }
  50. fr.close();
  51. }
  52. }

输入5个学生的信息(包括学号,姓名,英语成绩,计算机语言成绩和数据库成绩), 统计各学生的总分,然后将学生信息和统计结果存入test.txt文件中的更多相关文章

  1. python requests + xpath 获取分页详情页数据存入到txt文件中

    直接代码,如有不懂请加群讨论# *-* coding:utf-8 *-* #import jsonimport requestsimport pytesseractimport timeimport ...

  2. 把cmd信息中的正常和异常输出分别输出到不同txt文件中

    场景一: 1.大量滚动信息容纳不下,在小黑屏中被冲刷掉. 2.希望把正常输出和异常输出分别输出到不同地方. 相关命令 一共有4个输出到文件的命令,现以jar命令打war包举例说明: 命令 说明 举例  ...

  3. Java中读取txt文件中中文字符时,出现乱码的解决办法

    这是我写的一个Java课程作业时,遇到的问题. 问题描述: 我要实现的就是将txt文件中的内容按一定格式读取出来后,存放在相应的数组. 我刚开始运行时发现,英文可以实现,但是中文字符就是各种乱码. 最 ...

  4. SQL C# nvarchar类型转换为int类型 多表查询的问题,查询结果到新表,TXT数据读取到控件和数据库,生成在控件中的数据如何存到TXT文件中

    在数据库时候我设计了学生的分数为nvarchar(50),是为了在从TXT文件中读取数据插入到数据库表时候方便,但是在后期由于涉及到统计问题,比如求平均值等,需要int类型才可以,方法是:Conver ...

  5. python操作txt文件中数据教程[2]-python提取txt文件

    python操作txt文件中数据教程[2]-python提取txt文件中的行列元素 觉得有用的话,欢迎一起讨论相互学习~Follow Me 原始txt文件 程序实现后结果-将txt中元素提取并保存在c ...

  6. C#如何提取.txt文件中的每个字符串

    C#如何提取.txt文件中的每个字符串,并将其存放到一个类中. 将其中的编号 菜名 价格 分别存入不同的数组中. 注:在用ReadLine读取一行信息时为什么读取的中文字符变成了乱码. 20 满意答案 ...

  7. Windows/Ubuntu下,将所有文件名字列举出来并保存到txt文件中

    Windows下 使用如下的DOS命令来实现: dir /s /b > lists.txt 可以将当前路径下的所有文件的"文件路径+文件名"存储在lists.txt中. 其中 ...

  8. 向txt文件中写入内容(覆盖重写与在末尾续写+FileOutputStream与FileWriter)(转发:https://blog.csdn.net/bestcxx/article/details/51381460)

    !!!! 读取txt文件中的内容 import java.io.BufferedReader; import java.io.File; import java.io.FileReader; /** ...

  9. 按行读取TXT文件中的内容

    public Dictionary<int, string> GetDicFromLog() { try { StreamReader sr = new StreamReader(file ...

随机推荐

  1. linux_shell_传递参数

    在执行shell脚本时可以传递参数: 脚本获取参数的格式为:$0  $1  $2 ...其中$1 为传递的第一个参数  而$0 接受的是./test.sh 这个东西 代码:例: #!/bin/bash ...

  2. js文字滚动效果

    function (global) { var logo = document.getElementById('logo'); var text = document.createTextNode(' ...

  3. 本地服务器搭建服务:mysql

    话不多少,mysql的优劣不再此讨论. 1.官网地址:https://dev.mysql.com/downloads/mysql/ 下载页面直接  No thanks,just start my do ...

  4. BZOJ5289: [Hnoi2018]排列

    传送门 第一步转化,令 \(q[p[i]]=i\),那么题目变成: 有一些 \(q[a[i]]<q[i]\) 的限制,\(q\) 必须为排列,求 \(max(\sum_{i=1}^{n}w[i] ...

  5. jQuery同步Ajax带来的UI线程阻塞问题

    一.需求 在调ajax接口的时候因为有时间延迟,想要做一个loading加载的效果,等数据返回时再把loading的效果去掉. 所以我在调ajax的代码块前面加了显示loading效果的代码,ajax ...

  6. angularjs -- 页面模板清除

    前几天项目在上线过程中,出现了一些新问题.页面在切换时由于前一个页面的模板清理不及时,会造成页面的重叠.导致这个问题的原因是:页面模板缓存,即上一个页面退出时,浏览器没有及时清空上一个页面的模板,导致 ...

  7. CSS盒模型详解(图文教程)

    本文最初发表于博客园,并在GitHub上持续更新.以下是正文. 盒子模型 前言 盒子模型,英文即box model.无论是div.span.还是a都是盒子. 但是,图片.表单元素一律看作是文本,它们并 ...

  8. jboss eap6.1(4)(部署应用)

    1.添加应用war包 手动部署,添加war包到standalone\deployments下,手工创建一个文件,如war包名称是a.war,创建一个a.war.deployed文件,内容随意. 2.  ...

  9. SQL删除指定条件的重复数据,只保留一条

    BEGIN DELETE TB FROM TableName TB WHERE TB.ID IN (SELECT MIN(ID) FROM TableName TB2 GROUP BY TB2.Col ...

  10. 500.19 ,错误:4.00x80070005

    直接把网站根目录添加上everyone权限即可