I/O处理小练习--保存用户账号密码
程序员文章站
2022-09-11 21:09:58
I/O处理小练习--保存用户账号密码 用户输入姓名和密码,将每一个姓名和密码保存到文件中,输入done时程序结束 需要注意的几个的地方: 1.FileOutputStream一定要放在循环之外,否则这个文件的内容会一直覆盖,最后什么也存不到 2.判定done的时候,一定要规定长度,要不然这一判断条件 ......
I/O处理小练习--保存用户账号密码
用户输入姓名和密码,将每一个姓名和密码保存到文件中,输入done时程序结束
1 import java.io.*; 2 3 public class Example { 4 public static void main(String[] args){ 5 byte[] name=new byte[20]; 6 byte[] password=new byte[20]; 7 File file=new File("word.txt"); 8 try { 9 FileOutputStream out=new FileOutputStream(file); 10 while(true){ 11 System.out.println("请输入用户名:"); 12 System.in.read(name); 13 if("done".equals(new String(name, 0, 4))){ 14 break; 15 } 16 System.out.println("请输入密码:"); 17 System.in.read(password); 18 for(int i=0;name[i]!=0;i++){ 19 out.write(name[i]); 20 } 21 for(int i=0;password[i]!=0;i++){ 22 out.write(password[i]); 23 } 24 } 25 out.close(); 26 } catch (IOException e) { 27 // TODO Auto-generated catch block 28 e.printStackTrace(); 29 } 30 31 32 } 33 34 }
需要注意的几个的地方:
1.FileOutputStream一定要放在循环之外,否则这个文件的内容会一直覆盖,最后什么也存不到
2.判定done的时候,一定要规定长度,要不然这一判断条件不可能成功,有空值
3.name[i]!=0的判定是因为字节数组是已经定义好了长度的,其他地方的空值也会被写入,导致文件内的格式很乱
4.文件输出流的关闭一定要放在while循环之外,提前关闭了就无法写入后面的数据了
运行结果如下:
上一篇: 甘肃景点排行榜 甘肃最好玩的旅游景点
下一篇: 饿了么怎么抢双11霸王餐?