演習1:文字出力ストリームに文字データを書き込む
- コンソールから情報を入力するようにユーザーに依頼すると、プログラムはその情報をInfo.txtファイルに保存します。複数の情報を入力でき、各情報は1行に保存されます。ユーザーが「886」と入力すると、プログラムは終了します。
手順:
- MainAPPクラスを作成し、main()メソッドを含めます
- 上記の要件に従ってプログラムを実装します
コード:
public class Test01_07 {
public static void main(String[]args) throws IOException {
//1. 指定输出流, 对应的文件Info.txt
FileWriter bw= new FileWriter("Info.txt");
//2.采用循环的方式,把每条信息存储一行到Info.txt中
Scanner sc= new Scanner(System.in);
while(true){
//获取键盘输入的一行内容
System.out.print("请输入内容:");
String str= sc.nextLine();
//当用户输入:”886”时,程序结束。
if ("886".equals(str)) {
break;//跳出循环
}
//把内容写入到Info.txt文件中
bw.write(str);
//换行
bw.write(System.lineSeparator());
}
//关闭流
bw.close();
}
}
演習2:文字出力ストリームは文字データを書き込み、コレクションに保存します
- コンソールから3人の学生の情報を受け取り、各情報はStudentオブジェクトに保存され、複数のStudentオブジェクトはコレクションに保存されます。入力後、すべての学生情報をファイルStudent.txtに保存します。各学生情報は1行に保存され、複数の属性値はコンマで区切られます。
手順:
1。次の属性を使用してStudentクラスを作成します:
学生ID、名前、性別、年齢。
すべての属性は文字列タイプを使用します。パラメータを必要とせず、完全なパラメータ構築方法。すべてのプロパティはプライベートであり、パブリックのget / setメソッドが提供されています。
2. main()メソッドを含むMainAppクラスを作成します。main
()メソッドで:1。Student
オブジェクトのコレクションを定義します。2。3
回ループし、コンソールから3つの学生情報を受け取り、各情報がStudentオブジェクトをカプセル化します。 、各Studentオブジェクトをコレクションに保存します。
3.コレクションをトラバースし、各Studentオブジェクトを取得し、すべての属性値を取り出して、ファイルTest2_2.txtに出力します。各学生の情報は1行にあります。
コード:
public class Task02_03 {
public static void main(String[] args) throws IOException {
// 1.定义学生类, 定义存学生的集合
ArrayList<Student> list = new ArrayList<Student>();
// 2.通过3次循环,完成如下操作
Scanner sc = new Scanner(System.in);
for (int i = 1; i<= 3; i++) {
// 键盘输入学生的信息,
System.out.print("请输入第" + i + "名学生的学号:");
String id = sc.next();
System.out.print("请输入第" + i + "名学生的姓名:");
String name = sc.next();
System.out.print("请输入第" + i + "名学生的性别:");
String sex = sc.next();
System.out.print("请输入第" + i + "名学生的年龄:");
String age = sc.next();
// 把信息封装到Student对象中
Student s = new Student(id, name, sex, age);
// 把Student对象存到集合里
list.add(s);
}
// 3.将所有学员信息存储到文件Student.txt中。
FileWriter out = new FileWriter("Student.txt");
// 每名学员信息存储一行,多个属性值中间用逗号隔开。
for (int i = 0; i<list.size(); i++) {
// 1.获取集合中每一个学生对象
Student s = list.get(i);
// 2.获取对象中的每一个属性值,多个属性值中间用逗号隔开
String line = s.getId() + "," + s.getName() + "," + s.getSex() + "," + s.getAge();
// 3.按照指定的格式把对象的属性值,写入到文件中
out.write(line);
out.write(System.lineSeparator());
}
out.close();// 关闭流
}
}