用java实现汉字的笔画数 java中输入汉字 | 您所在的位置:网站首页 › 汉字笔画输入方法 › 用java实现汉字的笔画数 java中输入汉字 |
用java实现汉字的笔画数 java中输入汉字
转载
mob6454cc7b19b2 2023-06-01 10:12:20 文章标签 用java实现汉字的笔画数 对象序列化 字符流 文件读写 System 文章分类 Java 后端开发 通过修改文件的属性编码如图 属性-》编码-》GBK即可 直接用Scanner输入,System.out输出
1.中文文件的读写用字符流PrintWriter 、FileReader 、FileWriter、 BufferedReader、 BufferedWriter 等,读取文件一定要用字符流。(BufferedReader、 BufferedWriter比FileReader 、FileWriter在方法兼容的基础上,提供的方法更多,PrintWriter提供的方法比BufferedWriter方便但是仅限于文件的写入) 2.如果是文件操作对象是类对象的话 可用对象序列化 ObjectInputStream、ObjectOutputStream等。 3.以上 流的具体用法参考 相关参考书 JDK1.7的我暂时找不到中文的 4.亲,最后一定要有**.close();不要忘了,漏了这个不会提示有错,文件内容为空 5.最后贴上一个小应用帮助理解。 /* * 中文 输入输出流 * 作者:冷秋月 */ package stu; import java.io.*; import java.util.Scanner; class Student implements Serializable { static final long serialVersionUID = 12345L;//呢个东东有咩用,听老师说是用于升级软件,那个大神能详解一下。 String name; String tel; String birthday; public Student(String n, String t, String b) { name = n; tel = t; birthday = b; } } public class stu { public static void main(String[] args) { // TODO code application logic here int n = 0, i; Boolean finished = true; Student stu[] = new Student[300]; try { while (finished) { Scanner cin = new Scanner(System.in); //数据输入 String name; String tel; String birthday; System.out.println("输入学生姓名"); name = "学生姓名 " + cin.nextLine(); System.out.println("输入学生联系方式"); tel = "学生联系方式 " + cin.nextLine(); System.out.println("输入学生生日(如1992/01/01)"); birthday = "学生生日 " + cin.nextLine(); Student s = new Student(name, tel, birthday); //对象放进类数组中 stu[n] = s; n++; //判断是否继续 System.out.println("继续录入按1,停止按0"); int c = cin.nextInt(); if (c == 0) { finished = false; } } //另外建一个新txt 共查看数据因为data 为乱码 PrintWriter pf = new PrintWriter("学生数据.txt"); for (i = 0; i < n; i++) { pf.println(stu[i].name); pf.println(stu[i].tel); pf.println(stu[i].birthday); } pf.close(); /*遇上面所写的PrintWriter的代码功能一样 BufferedWriter bwf=new BufferedWriter(new FileWriter("学生数据.txt")); for (i = 0; i < n; i++) { bwf.write(stu[i].name); bwf.newLine(); bwf.write(stu[i].tel); bwf.newLine(); bwf.write(stu[i].birthday); bwf.newLine(); } bwf.close(); */ //写入对象 ObjectOutputStream inf = new ObjectOutputStream(new FileOutputStream("data.txt")); inf.writeObject(stu); inf.close(); //读出对象 ObjectInputStream outf = new ObjectInputStream(new FileInputStream("data.txt")); stu = (Student[]) (outf.readObject()); for (i = 0; i < n; i++) { System.out.println(stu[i].name); System.out.println(stu[i].tel); System.out.println(stu[i].birthday); } outf.close(); } catch (Exception e) { System.out.println("发生异常" + e); e.printStackTrace(); } } } 本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。 赞 收藏 评论 分享 举报上一篇:mysql sql性能分析工具 mysql sql性能优化 下一篇:android系统证书转换方法 安卓证书安装程序 |
CopyRight 2018-2019 实验室设备网 版权所有 |