Tôi có một đối tượng Serializable được cho là chứa một java.awt.Image làm thành viên của nó. Làm thế nào tôi nên đi về serializing nó? (Đã chỉnh sửa từ phiên bản đầu tiên không rõ ràng, xin lỗi.)Làm thế nào để tuần tự hóa tốt nhất một java.awt.Image?
Trả lời
ImageIcon thực hiện Serializable và nó có thể được sử dụng để quấn một lớp Image
http://java.sun.com/j2se/1.5.0/docs/api/javax/swing/ImageIcon.html
Tôi không biết điều đó. Tôi tin rằng bạn cần phải viết serializer của riêng bạn để tiết kiệm cơ bản các giá trị chiều rộng, chiều cao và pixel ... Hoặc viết nó ra luồng dưới dạng PNG hoặc một cái gì đó
javax.swing.ImageIcon, như một phần của Swing, không đảm bảo để có hình thức tuần tự tương thích giữa các phiên bản. Tuy nhiên, bạn có thể ăn gian và nhìn vào mã readObject và writeObject của nó - tìm chiều rộng và chiều cao, lấy các pixel bằng PixelGrabber. Tôi không hoàn toàn chắc chắn rằng bao gồm các mô hình màu sắc chính xác. Cách thay thế rõ ràng là viết một định dạng hình ảnh thực với javax.imageio.
- 1. Làm thế nào để tuần tự hóa một gói?
- 2. JIT. Cách tốt nhất để tuần tự hóa thành json
- 3. Làm thế nào để tuần tự hóa/deserialize một hashmap?
- 4. Tuần tự hóa JSON JSON - thực hành tốt nhất
- 5. Làm thế nào để tuần tự hóa ByteBuffer
- 6. IPhone SDK - Làm thế nào để tuần tự hóa ABRecord?
- 7. Cách tốt nhất để jSON tuần tự hóa một .NET DataTable trong WCF là gì?
- 8. Làm thế nào để chỉnh sửa trường Rails được tuần tự hóa trong một biểu mẫu?
- 9. Làm thế nào để thay đổi một đối tượng được tuần tự hóa?
- 10. Cách tiếp cận tốt nhất để tuần tự hóa BigDecimal/BigInteger thành ProtocolBuffers
- 11. Làm thế nào để tuần tự hóa một DataTable thành một chuỗi?
- 12. Cách tốt nhất để tuần tự hóa các đối tượng JavaScript thành XML là gì?
- 13. Thực hành tốt nhất để tuần tự hóa/Deserialize từ Java sang XML
- 14. Cách tốt nhất để tuần tự hóa cây phần tử wpf thành Xaml là gì?
- 15. Làm cách nào để tuần tự hóa một đối tượng thành một XDocument?
- 16. Làm thế nào để cấu trúc lại một lớp được tuần tự hóa trong .NET?
- 17. Làm thế nào để tuần tự hóa một JObject mà không có định dạng?
- 18. Làm thế nào để tuần tự hóa/deserialize một C# WCF DataContract đến/từ XML
- 19. Làm thế nào để tuần tự hóa một đối tượng JavaScript chung thành XML
- 20. Làm thế nào để tuần tự hóa một đối tượng thành XML mà không nhận xmlns = "..."?
- 21. Làm thế nào để tuần tự hóa một mảng đối tượng jQuery cho JSON Post?
- 22. Làm thế nào để tuần tự hóa một ILI <T>?
- 23. Làm thế nào tôi có thể tuần tự hóa một đóng cửa trong Perl?
- 24. Tuần tự hóa danh sách Python - phương pháp nhanh nhất
- 25. Làm thế nào để tránh việc tuần tự hóa các giá trị null trong HashMap?
- 26. Làm cách nào để tuần tự hóa một đối tượng đơn giản trong sdk iPhone?
- 27. Làm cách nào để bản địa hóa khi tuần tự hóa JSON?
- 28. Làm thế nào để tuần tự hóa các POD không đáng kể?
- 29. Tuần tự hóa một lớp tĩnh?
- 30. Làm thế nào để tuần tự hóa con trỏ chia sẻ/yếu?
Chỉ cần lưu ý: Cảnh báo: Các đối tượng được tuần tự hóa của lớp này sẽ không tương thích với các bản phát hành Swing trong tương lai. – McDowell
tôi đã cố gắng .... nhưng đã gặp lỗi .... ngoại lệ lồng nhau là: \t java.io.EOFException xem câu hỏi mà tôi đã đăng ... http://stackoverflow.com/questions/ 11117626/java-rmi-passing-imageicon-objects –
Trong khi giải pháp này hoạt động, nó dường như tạo ra các tệp tuần tự rất lớn. Một công việc xung quanh là để giữ cho các tập tin còn nguyên vẹn trên đĩa và lưu một tham chiếu, sao chép hình ảnh đến một vị trí liên quan đến tập tin được tuần tự hóa. – psycotik