Java中的IO流详解(二)

家电修理 2023-07-16 19:16www.caominkang.com电器维修

目录
    • 1.1 PrintStream
    • 1.2 OutputStreamWriter
    • 1.3 InputStreamReader
    • 1.4 DataOutputStream
    • 1.5 DataInputStream类
    • 1.6 ObjectOutputStream类(重点)
    • 1.7 ObjectInputStream类(重点)
    • 1.8 RandomAessFile
1.1 PrintStream

java.io.PrintStream类主要用于更加方便地打印各种数据内容。

案例不断地提示用户输入要发送的内容,若发送的内容是"bye"则聊天结束,否则将用户输入的内容写入到文件d:/a.txt中。要求使用BufferedReader类来读取键盘的输入 ,System.in代表键盘输入要求使用PrintStream类负责将数据写入文件。

import java.io.;
import java.text.SimpleDateFormat;
import java.util.Date;

public class PrintStreamTest {

 public static void main(String[] args) {

  // 由手册可知构造方法需要的是Reader类型的引用,但Reader类是个抽象类,实参只能传递子类的对象  字符流
  // 由手册可知 System.in代表键盘输入, 而且是InputStream类型的 字节流
  BufferedReader br = null;
  PrintStream ps = null;
  try {
   br = ne BufferedReader(ne InputStreamReader(System.in));
   ps = ne PrintStream(ne FileOutputStream("d:/a.txt", true));

   // 声明一个boolean类型的变量作为发送方的代表
   boolean flag = true;

   hile(true) {
    // 1.提示用户输入要发送的聊天内容并使用变量记录
    System.out.println("请" + (flag? "张三": "李四") + "输入要发送的聊天内容");
    String str = br.readLine();
    // 2.判断用户输入的内容是否为"bye",若是则聊天结束
    if ("bye".equals(str)) {
     System.out.println("聊天结束!");
     break;
    }
    // 3.若不是则将用户输入的内容写入到文件d:/a.txt中
    //else {
    // 获取当前系统时间并调整格式
    Date d1 = ne Date();
    SimpleDateFormat sdf = ne SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    ps.println(sdf.format(d1) + (flag?" 张三说":" 李四说") + str);
    / 

Copyright © 2016-2025 www.caominkang.com 曹敏电脑维修网 版权所有 Power by