java 保存对象_Java将对象保存到文件中/从文件中读取对象
1.保存对象到文件中
Java语言只能将实现了Serializable接口的类的对象保存到文件中,利用如下方法即可:
public static void writeObjectToFile(Object obj)
{
File file =new File("test.dat");
FileOutputStream out;
try {
out = new FileOutputStream(file);
ObjectOutputStream objOut=new ObjectOutputStream(out);
objOut.writeObject(obj);
objOut.flush();
objOut.close();
System.out.println("write object success!");
} catch (IOException e) {
System.out.println("write object failed");
e.printStackTrace();
}
}
参数obj一定要实现Serializable接口,否则会抛出java.io.NotSerializableException异常。另外,如果写入的对象是一个容器,例如List、Map,也要保证容器中的每个元素也都是实现 了Serializable接口。例如,如果按照如下方法声明一个Hashmap,并调用writeObjectToFile方法就会抛出异常。但是如果是Hashmap就不会出问题,因为String类已经实现了Serializable接口。另外如果是自己创建的类,如果继承的基类没有实现Serializable,那么该类需要实现Serializable,否则也无法通过这种方法写入到文件中。
Object obj=new Object();
//failed,the object in map does not implement Serializable interface
HashMap objMap=new HashMap();
objMap.put("test", obj);
writeObjectToFile(objMap);
2.从文件中读取对象
可以利用如下方法从文件中读取对象
public static Object readObjectFromFile()
{
Object temp=null;
File file =new File("test.dat");
FileInputStream in;
try {
in = new FileInputStream(file);
ObjectInputStream objIn=new ObjectInputStream(in);
temp=objIn.readObject();
objIn.close();
System.out.println("read object success!");
} catch (IOException e) {
System.out.println("read object failed");
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
return temp;
}
读取到对象后,再根据对象的实际类型进行转换即可。
java对象序列化并存储到文件中
● 如何将一个Java对象序列化到文件里 使用输入输出流,,一个是ObjectOutputStream 对象,ObjectOutputStream 负责向指定的流中写入序列化的对象.当从文件中读取序列 ...
scrapy cookies:将cookies保存到文件以及从文件加载cookies
我在使用scrapy模拟登录新浪微博时,想将登录成功后的cookies保存到本地,下次加载它实现直接登录,省去中间一系列的请求和POST等.关于如何从本次请求中获取并在下次请求中附带上cookies的 ...
Java的实验程序之输出单个文件中的前 N 个最常出现的英语单词
日期:2018.10.11 星期四 博客期:016 题目:输出单个文件中的前 N 个最常出现的英语单词,并输出到文本文件中 在程序运行之前,我试着先写了字符的字母的总结,加载代码如下: //如下是第一 ...
Java 中统计文件中出现单词的次数练习
统计英文article.txt文件中出现hello这个单词的次数 这个是article.txt文件内容 { hello The Royal Navy is trying hello to play h ...
(文件名.JAVA)的文件名只能与该文件中的public类的名称一致
1.如果类Yuangong 被声明为公共的(public),那么必须将类Yuangong 保存在名为Yuangong.java的文件中:2.反之,在一个文件中最多包含一个顶级的公共类,并且该公共类的名 ...
获取maven下resouce中的文件为File对象
例如src/main/resources目录下面有个config/interfaces/quick-stock.xml文件我想直接在某一个Java类里面获取到这个文件的File对象,怎么整?(注意噢: ...
java获取网页源代码并写入本地文件中
import java.io.*; import java.net.*; public class URLDemo { public static void main(String args[]){ ...
python中csv文件的读取问题
在python读取csv格式的文件时,使用csv.reader读取文件对象,出现了line contains NULL byte的错误,如下: reader = csv.reader(open(fil ...
Java I/O---RandomAccessFile类(随机访问文件的读取和写入)
1.JDK API中RandomAccessFile类的描述 此类的实例支持对随机访问文件的读取和写入.随机访问文件的行为类似存储在文件系统中的一个大型 byte 数组.存在指向该隐含数组的光标或索引 ...
随机推荐
less和sass
sass 总体来说应用是和less差不多的,但是也有所不同 sass是用“$”符号来命名 然后加值来先引入后使用的方式. 同时也应该注意到的是sass有两种后缀名文件:一种后缀名为sa ...
【随笔】Linux服务器备份相关
服务器数据的安全性一直都是服务器日常管理的重中之重.Linux服务器虚拟化虽然以其高度可靠的作业系统而闻名,不过系统失效仍然可能发生.可能因为硬体故障,电源中断,或其他不可预料的问题.更常见的这 些问 ...
js Array对象
http://www.w3cschool.cc/js/js-obj-array.html 创建新方法 原型是JavaScript全局构造函数.它可以构建新Javascript对象的属性和方法. 实例: ...
在子线程中使用runloop,正确操作NSTimer计时的注意点 三种可选方法
一直想写一篇关于runloop学习有所得的文章,总是没有很好的例子.游戏中有一个计时功能在主线程中调用: 1 + (NSTimer *)scheduledTimerWithTimeInterval:( ...
关键字 explicit
C++中, 一个参数的构造函数(或者除了第一个参数外其余参数都有默认值的多参构造函数), 承担了两个角色. 1 是个构造器 ,2 是个默认且隐含的类型转换操作符. 所以, 有时候在我们写下如 AAA ...
一些LVS实验配置、工具和方案
最近做了一些LVS配置和方案的验证实验,将过程中用到的一些配置.工具和具体的解决方案记录一下.使用DR模式.验证一种不中断业务的RealServer升级或者重启方案. 网络规划: 节点 IP地址 ce ...
图解android开发在界面上显示图片
图解android开发在界面上显示图片
Qt之QEvent(所有事件的翻译)
QEvent 类是所有事件类的基类,事件对象包含事件参数. Qt 的主事件循环(QCoreApplication::exec())从事件队列中获取本地窗口系统事件,将它们转化为 QEvents,然后将 ...
Docker数据管理(五)
一.什么是数据卷 生成环境中使用docker的过程中,往往需要对数据进行持久化,或者需要多个容器之间进行数据共享,这个就涉及到了容器数据管理 容器中管理数据主要有两种方式: 数据卷:容器内数据之间映射 ...
C# IsBackground作用
https://blog.csdn.net/snakorse/article/details/43888847 要点: 1.当在主线程中创建了一个线程,那么该线程的IsBackground默认是设置为 ...
java 保存对象_Java将对象保存到文件中/从文件中读取对象相关推荐
- java文件保存异常_Java 实现把异常信息写入到文件中
示例代码如下: import java.io.File; import java.io.FileNotFoundException; import java.io.PrintStream; publi ...
- 如何修改xd.properties文件中对象存储文件信息_对块存储、文件存储、对象存储的认识总结...
因工作原因接触了对象存储,从而了解到相关的块存储和文件存储.搜罗了网上各种信息,结合自己的理解,整理如下.欢迎阅读,批评指正. 开头引用下几篇关于"块存储.文件存储.对象存储"的文 ...
- Spark 把RDD数据保存到hdfs单个文件中,而不是目录
相比于Hadoop,Spark在数据的处理方面更加灵活方便.然而在最近的使用中遇到了一点小麻烦:Spark保存文件的的函数(如saveAsTextFile)在保存数据时都需要新建一个目录,然后在这个目 ...
- java 保存 设置_java – 保存设置的实现
我正在写一些关于 android的游戏.我想知道如何保存设置,以免出现更新问题. 例如,我使用序列化保存设置,我有类GameChar public class GameChar implements ...
- java 保存数据_java数据存储
记录一下java中的数据存储: 这是我参考的文章: 在<thinking in java>这本书的第二章也有提到,因为涉及到jvm(我还没看),这个等我之后再补充. 一.六种不同的数据存储 ...
- matlab gui怎样将结果保存_Matlab将工作区变量保存到文件中的方法
save 将工作区变量保存到文件中 全页折叠 语法 save(filename) save(filename,variables) save(filename,variables,fmt) save( ...
- mysql 结果保存到文件_将MySQL中sql运行结果保存到文件
将MySQL中sql运行结果保存到文件 有两种方法. 方法一:在mysql>提示符中使用tee mysql> tee output.txt Logging to file 'output. ...
- java获得当前路径_JAVA 取得当前目录的路径/Servlet/class/文件路径/web路径/url地址...
在写java程序时不可避免要获取文件的路径...总结一下,遗漏的随时补上 1.可以在servlet的init方法里 String path = getServletContext().getRealP ...
- java stdout库_Java重写StdOut并将日语写入文件
我一直在尝试创建一个可以设置为标准输出并写入文件的类.到目前为止,没问题.但是,当我试图在输出中写入一些日语时,它不会显示在文件中.我只得到一行角色. 这就是OutputStream类的样子(我创建了 ...
- java 文件名查找_java 查找目录下指定文件名的文件
这个Java类的作用是查找目录文件中特定文件名的文件,并不是查找文件内容.具体代码如下: package net.xsoftlab.baike; import java.io.File; import ...
最新文章
- Python break语句,continue语句,pass 语句
- 原型继承与属性拷贝的混合应用
- hi3559a100解码
- python创意编程比赛-报名了!2019年全国青少年创意编程与智能设计大赛报名开始了...
- python爬虫工程师-Python-爬虫工程师-面试总结
- 30-35岁职场规划深谈,字字戳心
- Lexus OpenCart 自适应主题模板 ABC-0017
- Mybatis 学习日记(1)
- jquery动态加载JS【方法getScript】的改进
- 学习深度学习需要哪些知识_您想了解的有关深度学习的所有知识
- 上海java 开发培训_上海十大java培训
- 查看win激活状态的命令
- C#多线程学习-求和
- 关于Mysql模糊查询下划线的问题
- 动环监控系统价格,动环监控系统价格多少
- 第十三届蓝桥杯省赛模拟赛
- FAT12文件系统详解
- codeforces 1562 A. The Miracle and the Sleeper
- ubuntu 19.04下交叉编译64位vlc 3.0.8
- 精工机械表 调整时间,日期和星期的方法