下用PrinterWriter写入文件,再用Scanner读文件输出

package textfile;
import java.io.*;
import java.util.*;
public class TextFileTest {public static void main(String[] args) throws IOException{Employee[] staff=new Employee[3];staff[0]=new Employee("张珊珊",1992,12,15);staff[1]=new Employee("李花花",1993,2,5);staff[2]=new Employee("丘比特",1995,3,12);try(PrintWriter out=new PrintWriter("emloyee.txt","UTF-8"))//PrintWriter对象{writeData(staff,out);}try(Scanner in=new Scanner(new FileInputStream("emloyee.txt"), "UTF-8"))//Scanner对象{Employee[] newstaff=readData(in);//读回的数组for(Employee e:newstaff){System.out.println(e.getName()+":"+e.getBirthyear()+","+e.getBirthmonth()+","+e.getBirthday());}}       }//把emplyoees数组写入到文件中public static void writeData(Employee[] emplyoees,PrintWriter out) throws IOException{out.println(emplyoees.length);for(Employee e:emplyoees){writeEmployee(out,e);//写一个元素对象}}//写入一个对象public static void writeEmployee(PrintWriter out, Employee e) {out.println(e.getName()+":"+String.valueOf(e.getBirthyear())+","+String.valueOf(e.getBirthmonth())+","+String.valueOf(e.getBirthday()));}//从文件中读一个数组public static Employee[] readData(Scanner in){int n=in.nextInt();in.nextLine();Employee[] emplyoees=new Employee[n];for(int i=0;i<n;i++){emplyoees[i]=readEmplyee(in);}return  emplyoees;}//读一个对象public static Employee readEmplyee(Scanner in) {// TODO Auto-generated method stubString line=in.nextLine();String[] info=line.split("[:,]");String n=info[0];int y=Integer.parseInt(info[1]);int m=Integer.parseInt(info[2]);int d=Integer.parseInt(info[3]);Employee e=new Employee(n,y,m,d);       return e;}
}
public class Employee {String name;int birthyear,birthmonth,birthday;Employee(String n,int y,int m,int d ){name=n;birthyear=y;birthmonth=m;birthday=d;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getBirthyear() {return birthyear;}public void setBirthyear(int birthyear) {this.birthyear = birthyear;}public int getBirthmonth() {return birthmonth;}public void setBirthmonth(int birthmonth) {this.birthmonth = birthmonth;}public int getBirthday() {return birthday;}public void setBirthday(int birthday) {this.birthday = birthday;}
}

PrintWriter和Scanner的综合运用写文件并读文件相关推荐

  1. python 读文件写数据库_python读文件写数据库

    Python 读文件,写数据库 Python 读文件 打开文件 Python读写文件在计算机语言中被广泛的应用,如果你想了解其应用的程序,以下的文章会给你详细的介绍相关内容,会你在以后的学习的过程中有 ...

  2. 【C++ 八】写文件、读文件

    写文件.读文件 文章目录 写文件.读文件 前言 1 文本文件 1.1 写文件 1.2 读文件 2 二进制文件 2.1 写文件 2.2 读文件 前言 本文包含文本文件写文件.文本文件读文件.二进制写文件 ...

  3. C语言 File文件处理 读文件

    在C语言程序开发中,也会遇到很多文件上传,文件写入等对于文件的操作业务需要开发,文件处理也是任何应用程序的重要组成部分.C语言有几种创建,读取,更新和删除文件的方法.本文主要介绍C语言 File文件操 ...

  4. 操作系统之文件管理:6、文件的基本操作(创建文件、打开文件、删除文件、关闭文件、读文件、写文件)

    5.文件的基本操作 思维导图 文件操作 创建文件 删除文件 读文件 写文件 打开文件 关闭文件 思维导图 文件操作 创建文件 删除文件 读文件 写文件 打开文件 1.在系统中有一张系统的文件打开表,用 ...

  5. Java读 写文本_java读文件写文件的方法

    java读文件写文件的方法 有的时候经常为真么读写文件最合理发愁,因为JAVA提过读写文件的方式太多了(C更甚至,fopen & open又有多少人傻傻分不清,更别说ReadFile了).今天 ...

  6. Json文件转换为Excel文件!涉及读文件,时间戳转化,写文档

    一. 思路 今天接到个小任务,让把json文件转换成excel文件,按照列展开. 思路:既然json已经都已经是现成的,那直接将json文件做读操作,在通过不同的key,找到对应的信息,在存到单元格中 ...

  7. C语言按行读文件与读文件中每一个字符

    这里写自定义目录标题 1.按行读取文件,分别获得文件中的每一行. 2.读取文件中的每一个字符并写入字符串数组. 注意: 1.按行读取文件,分别获得文件中的每一行. char Buffer[100]; ...

  8. matlab读int16读文件_matlab读文件

    matlab 文件操作 文件操作是一种重要的输入输出方式,即从数据文件读取数据或将结果写入数据文件. MATLAB 提供了一系列低层输入输出函数,专门用于文件操作. 1 .文件的打开与关闭 1 )打开 ...

  9. 内存映射文件进行写文件和读文件有啥不同_Linux中的mmap映射 [二]

    来看下上文介绍的mmap()的函数原型是怎样的: #include <sys/mman.h> void *mmap(void *addr, size_t length, int prot, ...

最新文章

  1. 记一个自认为写得有点复杂的sql语句
  2. OpenStack自动发现计算节点
  3. 10进制转换成其他进制-短除法
  4. java知识点_JAVA面试必会知识点「mysql部分」
  5. 通过anaconda安装jupyter lab
  6. 2021李宏毅机器学习课程笔记——Adversarial Attack
  7. Exam 70-462 Administering Microsoft SQL Server 2012 Databases 复习帖
  8. ES6对比ES3\ES5
  9. Spring Thymeleaf无法显示图片
  10. python 数据shape的理解
  11. 美通企业日报 | 信达生物与礼来制药达成战略合作;希尔顿旗下康莱德酒店亮相天津...
  12. 苹果手机升级13无法开机_苹果手机升级系统后无法开机怎么办?快拿出你的小本本来做笔记吧...
  13. 使用微擎后台授权须知
  14. 怎么解决运行时输入错误,请重新输入以及专业无法输入的问题
  15. dp在约会上是什么意思_饭圈用语dp是什么梗
  16. python制作数据增长动图_手把手教你做一个python+matplotlib的炫酷的数据可视化动图...
  17. 购买您的工作从家庭企业经营使用这些技巧
  18. php数据库自动引蜘蛛,SEO之小旋风万能站群池X5.1去限制版,引蜘蛛提高排名,免授权永久使用...
  19. 华为的二线技术支持是做啥的?
  20. 【矩阵求导】对于复向量l1-norm 1范数的求导

热门文章

  1. Linux之解析鼠标input事件数据
  2. python —— 装饰器
  3. C++ Primer 5th笔记(chap 13 拷贝控制)移动构造和移动赋值
  4. 【Flask项目2】模型类的映射方式新版本和旧版本(4)
  5. CSS基本选择器(元素选择器、类选择器、id选择器)
  6. 15-Arm-Confidential-Compute-Software-Stack
  7. 快速定位关键爆破点的几种方法
  8. 看个电子书都会被黑客攻击,这是上面情况?
  9. crypto++使用DES加密(ECB pkcs7padding )
  10. 8、Java Swing JCheckBox:复选框组件