Tôi vẫn còn tương đối mới đối với ổ cắm và tôi chưa thấy bất kỳ thông tin nào về chủ đề này.Ổ cắm Java: DataOutputStream hoặc OutputStream?
Để ghi vào một ổ cắm kết nối, bạn có thể sử dụng
socket.getOutputStream().write
Hoặc tạo một mới DataOutputStream
từ các ổ cắm OutputStream
và ghi vào đó.
- Điều gì được coi là "thực hành tốt", sử dụng DataOutputStream hoặc OutputStream? Hầu hết các số the examples Tôi tìm thấy trên internet sử dụng DataOutputStream (để gửi Strings, chẳng hạn như trong một cuộc trò chuyện hai chiều).
- Có bất kỳ ưu điểm hay nhược điểm nào khi sử dụng DataOutputStream trên OutputStream không?
- Có sự khác biệt nào về hiệu suất đáng chú ý giữa hai ví dụ này khi gửi tệp không?
Vì vậy, bạn sẽ đề xuất điều gì nếu bạn muốn tạo một ứng dụng java độc lập nền tảng có thể gửi tệp? – David
Ngay cả khi các tập tin chỉ chứa byte thô, bạn vẫn có thể gửi chúng với DataOutputStream, vì vậy tôi sẽ đi cho DataOuputStream trong mọi trường hợp. – JVerstry
'DataOutputStream' only 'đảm bảo dữ liệu được định dạng theo cách độc lập nền tảng' nếu bạn sử dụng API bổ sung mà nó cung cấp. Các phương thức 'write()' của nó không có các thuộc tính phép thuật. Nếu bạn chỉ sử dụng chúng, (a) không có sự khác biệt về hiệu năng nào cả, và (b) không có điểm nào trong việc sử dụng 'DataOutputStream' chút nào. Nếu bạn đang sử dụng các API bổ sung thì không có gì để so sánh hiệu suất của nó với. Vì vậy, tuyên bố về sự khác biệt về hiệu suất về cơ bản là vô nghĩa. – EJP