Java DataOutputStream编码和截断

Java DataOutputStream编码和截断,java,Java,我正在编写一个套接字编程应用程序,我想知道DataOutputStream 我有两个问题: 从DataOutputStream发送的字节的默认编码是什么 OutputStream.writeBytes(字符串s)可以发送的字符串的最大大小是多少?它是 流是否可能截断字符串(因此可能存在错误) 在讨论DataOutputStream中的编码之前,您需要说明您正在讨论的方法: 在每种情况下,都可以通过查看javadoc来获得答案: 随机,它只写出字符的下八位 有效地UTF-16HE 使用修改的

我正在编写一个套接字编程应用程序,我想知道
DataOutputStream

我有两个问题:

  • DataOutputStream
    发送的字节的默认编码是什么

  • OutputStream.writeBytes(字符串s)
    可以发送的
    字符串的最大大小是多少?它是
    流是否可能截断字符串(因此可能存在错误)


  • 在讨论DataOutputStream中的编码之前,您需要说明您正在讨论的方法:

  • 在每种情况下,都可以通过查看javadoc来获得答案:

  • 随机,它只写出字符的下八位
  • 有效地
    UTF-16HE
  • 使用
    修改的UTF-8
    编码

  • 要回答第二个问题,可以存储的字符串大小的最大值将是内存,否则无法存储字符串,并释放磁盘空间。

    不清楚第一个问题的含义-字节没有编码;它们只是字节。文本在转换为字节时应用了编码。
    DataOutputStream.writeBytes(String)
    不会截断字符串。