在课堂中存储图像/声音的最佳方法?
-
03-07-2019 - |
题
我正在开发一种应用程序实例之间的交换格式,以便用户可以将信息保存到文件中并在以后恢复。整个“交换格式”是一个被序列化并写入磁盘的类。
您如何建议在该课程中存储图形/声音信息?我想避免将文件放入.jar。
解决方案
您可以将资源作为byte []数组保存在类中。使用ByteArrayInputStream和ByteArrayOutputStream,您可以将数组包装为流,并使用它们来存储和检索资源。
其他提示
将数据完全按照您喜欢的方式存储在类中,但实现数据的自定义序列化。请参阅可序列化。
**我**
您案件的更多细节如何? “最好的”方法通常取决于具体的应用/用途。图像/声音来自文件吗?从一个流?该类的每个实例是否应该存储单独的图像?或者可以在不同的实例之间共享图像?
<强> gsmd 强>
图像来自文件,声音来了 来自溪流;实际上有一套 其中一些项目可能有一个 附图;一个图像不能 共享
您尝试过哪些方法? 我想使用Serializable接口是要走的路。这是两个 文章。
基本上,
- 在您的班级中实施Serializable接口
- 将不应保存在文件中的成员标记为瞬态(包含文件句柄,套接字连接等上下文数据的成员)。
-
您必须自定义图像和声音类如何使用,但实现:
private void writeObject(ObjectOutputStream out)抛出IOException;
private void readObject(ObjectInputStream in)抛出IOException,ClassNotFoundException;
醇>
不隶属于 StackOverflow