Java套接字:DataOutputStream还是OutputStream?

Dav*_*vid 16 java sockets networking dataoutputstream

我还是比较新的插座,我还没有看到有关这个主题的任何信息.

要写入连接的套接字,您可以使用

socket.getOutputStream().write
Run Code Online (Sandbox Code Playgroud)

或者DataOutputStream从套接字创建一个新的OutputStream并写入.

  • 什么被认为是"良好实践",使用DataOutputStream或OutputStream?我在互联网上找到的大多数例子都使用DataOutputStream(发送字符串,例如双向聊天).
  • 使用DataOutputStream而不是OutputStream有什么优点或缺点吗?
  • 例如,在发送文件时,这两者之间的性能是否存在差异?

Jér*_*nge 11

DataOutputStream确保数据以独立于平台的方式格式化.这是一个很大的好处.它确保对方的一方能够阅读它.两者之间没有显着的性能差异.

OutputStream仅在传输原始二进制数据时才应使用.