当前位置: 首页 > news >正文

广州h5网站制作公司中国建筑设计咨询公司

广州h5网站制作公司,中国建筑设计咨询公司,北京欢迎你网站制作公司,wordpress商品展示主题【蓝桥杯算法题】输入输出流问题 题目:对文本文件进行带缓存的读写操作,可以读取文件不同位置的信息,可以进行对象序列化和对象反序列化。解释:总结: 题目:对文本文件进行带缓存的读写操作,可以…

【蓝桥杯算法题】输入输出流问题

    • 题目:对文本文件进行带缓存的读写操作,可以读取文件不同位置的信息,可以进行对象序列化和对象反序列化。
    • 解释:
    • 总结:

题目:对文本文件进行带缓存的读写操作,可以读取文件不同位置的信息,可以进行对象序列化和对象反序列化。

以下是一个简单的示例代码,演示了如何使用BufferedReaderBufferedWriterRandomAccessFile来进行带缓存的读写操作,并且使用ObjectInputStreamObjectOutputStream来进行对象序列化和反序列化


import java.io.*;public class FileIOExample {public static void main(String[] args) throws IOException, ClassNotFoundException {// 读取文件中的文本信息BufferedReader bufferedReader = new BufferedReader(new FileReader("input.txt"));String line;while ((line = bufferedReader.readLine()) != null) {System.out.println(line);}bufferedReader.close();// 在文件中指定位置写入数据RandomAccessFile randomAccessFile = new RandomAccessFile("output.dat", "rw");randomAccessFile.seek(10); // 将文件指针设置到第10个字节的位置randomAccessFile.writeBytes("Hello World!");randomAccessFile.close();// 对象序列化ObjectOutputStream objectOutputStream = new ObjectOutputStream(new FileOutputStream("data.dat"));Person person = new Person("张三", 25);objectOutputStream.writeObject(person);objectOutputStream.close();// 对象反序列化ObjectInputStream objectInputStream = new ObjectInputStream(new FileInputStream("data.dat"));Person personRead = (Person) objectInputStream.readObject();objectInputStream.close();System.out.println("姓名:" + personRead.getName() + ",年龄:" + personRead.getAge());}private static class Person implements Serializable {private String name;private int age;public Person(String name, int age) {this.name = name;this.age = age;}public String getName() {return name;}public int getAge() {return age;}}
}

解释:

  • 这段代码实现了文件的读写以及对象的序列化和反序列化。
  • 首先,通过 BufferedReader 和 FileReader 两个类来读取 input.txt
    文件中的文本信息。对于每一行数据,我们使用 readLine() 方法来读取,并且通过 while 循环输出到控制台上。
  • 接着,使用 RandomAccessFile 类在 output.dat 文件中指定位置写入数据。其中,通过 seek()
    方法将文件指针设置到第 10 个字节的位置,然后使用 writeBytes() 方法向该位置写入 “Hello World!”
    的字符串内容。
  • 接下来,通过 ObjectOutputStream 和 FileOutputStream 两个类来实现对象的序列化。我们创建一个
    Person 类型的对象 person,并将其写入文件 data.dat 中。
  • 最后,通过 ObjectInputStream 和 FileInputStream 两个类来实现对象的反序列化。我们从文件
    data.dat 中读取内容并将其转换为 Person 类型的对象 personRead,并输出该对象的姓名和年龄信息。

总结:

整个程序实现了多种文件操作,包括文本读取、定位写入和对象序列化等,是 Java I/O 操作的典型示例。
首先使用BufferedReader读取了一个文件中的文本信息,并将其打印出来;然后使用RandomAccessFile在文件中指定位置写入了一些数据;最后使用ObjectOutputStreamObjectInputStream对一个自定义对象进行了序列化和反序列化,并将其输出到控制台上。注意,Person类需要实现Serializable接口才可以被序列化。

http://www.yayakq.cn/news/984226/

相关文章:

  • 娄底建设企业网站医疗网站建设怎么样
  • 局域网网站制作我的世界做图片网站
  • 怎么做视频解析网站外链网
  • 深圳低价做网站aspnet网站开发源码
  • 山网站建设绿色长春app
  • 月嫂网站源码如何提升百度关键词排名
  • 太原做网站建设工程教育网校官网
  • 网页设计公司网站wordpress导航位置
  • 民间it网站建设第一设计
  • 中型网站开发语言seo公司后付费
  • h5微网站建设多少钱网站是先制作后上线么
  • 区域信息网站怎么做wordpress头像加载
  • 如何手机做网站网站建设的发展序列
  • 腾讯云网站建设视频教程宁波荣胜网络科技有限公司
  • 以下可以制作二维码的网站为做网站如何备案
  • 网站可以做弹窗广告么户型图在哪个网站找
  • 小型网站建设步骤wordpress怎么做相关相似文章链接
  • 江西那家做网站公司好中江建设局网站
  • 云主机做网站域名打不开高端大气传媒公司名字
  • tp5网站开发模板如何交换优质友情链接
  • 做网站效果图wordpress后台拿shell
  • 不是网站开发语言的是网站建设如何交税
  • 网站排名监控工具国内建网站多少钱
  • 广西建设局网站首页手机移动端网站建设
  • 网站的搜索框如何做珠海专业网站建设价格
  • 网站域名好了下一步建设银行信用卡中心网站
  • 安徽富通建设集团有限公司网站网页编辑图片
  • win8网站设计网站方案制作的培训
  • 响应式制作网站建设东莞网络营销网络培训学校
  • 手机网站建设书籍网站编辑是做什么