【发布时间】:2020-07-22 05:50:31
【问题描述】:
这是我将字符串放入 ByteBuffer 的方式
String message="Hello\n\n";
ByteBuffer bresult = ByteBuffer.allocate(message.getBytes().length);
bresult.put(message.getBytes());
bresult.flip();
当我将字节缓冲区转换为字符串以查看结果时,\n\n 已从上述字符串中删除。 这就是我将 ByteBuffer 转换为 String 的方式
print(new String(bresult.array()));
结果是 Hello 没有任何换行符。 您可以在我的日志中的以下屏幕截图中看到结果 [![在此处输入图片描述][1]][1]
但是当我向像 message="Hello\n\n " 这样的 hello 字符串添加空格时,结果如下: [![在此处输入图像描述][2]][2] 如您所见,hello 字符串下有一些换行符。
【问题讨论】:
-
为什么我得到 (-1) 指向我的问题。我真的不知道答案,我现在得到的唯一答案是永远不要在 stackoverflow 中问任何问题,因为我会在我不知道的事情上得到负分。
-
您转换回
String以检查结果并查看其“错误”的代码部分在哪里?请发布完整 minimal reproducible example. -
只有当您的问题不符合How to Ask 的要求时,您才会被否决,另请参阅help center。你不会因为你不知道某事而被否决。对我来说,在这里投反对票的一个正当理由是,不清楚你是如何确定有问题的,你只共享了一半的相关代码。所以帮助者不可能解释你的方法到底有什么问题。
-
您的问题被否决并不是对个人的侮辱。这意味着你的问题不是一个好问题。在这种情况下,你的问题是无法回答的。提供的示例中的任何内容都不会删除两个换行符,并且您不会显示其他代码;我也不能从给定的代码中重现问题。您需要提供minimal reproducible example。
-
感谢您的反馈,我认为现在格式正确
标签: java android string bytebuffer