(1)按行读取文件studentInfo.txt的内容,获取学生姓名并写入到studentName.txt 文件中,且给每一行按序加上行号;获取 studentName.txt 文件的按行读取文件 studentInfo.txt 的内容,获取学生姓名并写入到studentName.txt 文件中,且给每一行按序加上行号;获取 studentName.txt 文件的长度及修改时间。 package test13_1;
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File;
import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.util.Date; public class FIleIo {
public static void main(String[] args) {   try {     File file = new File(\"studentName.txt\");    if(!file.exists()){     file.createNewFile();     }        BufferedWriter bw = new BufferedWriter(new FileWriter(file));    BufferedReader br = new BufferedReader(new FileReader(\"studentInfo.txt\"));        String line;    int number = 1;    while (( line = br.readLine()) != null) {     String[] sc =line.split(\    bw.write(number+sc[0].trim());     bw.newLine();     bw.flush();     number++;    }    bw.close();    br.close();        java.text.SimpleDateFormat df = new java.text.SimpleDateFormat(\"yyyy-MM-dd HH:mm:ss.SSS\");    String dateTime=df.format(new Date(file.lastModified()));        System.out.println(\"文件修改时间:\"+dateTime);
System.out.println(\"文件的长度:\"+file.length());    } catch (IOException e) {      e.printStackTrace();     }  }  }
(2)学生成绩存储在文件中,每行一个学生成绩,形如: 20151201 85 84 91.5 20151202 70 85 65 …
请编程读入学生成绩,并计算各门课程的均值和方差,写入文件最后 的最后一行,如:
71/10 81.2/11.3 76/15.3长度及修改时间。
package test13_2;
import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File;
import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; public class Score {
public static void main(String[] args) {   // TODO 自动生成的方法存根   File file = new File(\"student.txt\");   try {    BufferedWriter bw = new BufferedWriter(new FileWriter(file));    BufferedReader br = new BufferedReader(new FileReader(file));    String[] str = new String[]{\"20151201 85 84 91.5\70 85 65\   for(int i = 0;iint sum2 = 0;    int sum3 = 0;    while (( line = br.readLine()) != null) {     String[] sc =line.split(\" \");     sc1 += Double.parseDouble(sc[1]);     sc2 += Double.parseDouble(sc[2]);     sc3 += Double.parseDouble(sc[3]);     number++;     sum1 += sc1*sc1;     sum2 += sc2*sc2;     sum3 += sc3*sc3;    }    BufferedWriter bw1 = new BufferedWriter(new FileWriter(file,true));bw1.write(sc1/number+\"/\"+Math.sqrt((sum1-sc1*sc1)/number)+\"\\"+sc2/number+\"/\"+Math.sqrt((sum2-sc2*sc2)/number)+\"\\"+sc3/number+\"/\"+Math.sqrt((sum3-sc3*sc3)/number));    bw1.flush();    bw1.close();    br.close();   } catch (IOException e) {    e.printStackTrace();   }  } }