欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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循环之外,提前关闭了就无法写入后面的数据了

运行结果如下:

I/O处理小练习--保存用户账号密码

I/O处理小练习--保存用户账号密码