gpt4 book ai didi

java - 在某些具有 Java Scripting API 的计算机上,"FF FF"被转储为 "FD"

转载 作者:行者123 更新时间:2023-12-01 14:37:22 26 4
gpt4 key购买 nike

我遇到了 Java Scripting API together with JavaScript 的问题在某些电脑上。分析转储文件后,我注意到“FF FF”在某些 PC 上被打印为“FD”。下面是代码片段:

var outputfile = new RandomAccessFile(f, "rw");
var byte_data_array = getMyByteArrayData(somebytearray);
var data_string = new java.lang.String(byte_data_array);
outputfile.writeBytes(data_string);

最佳答案

您将数据从字节转换为字符串,而不指定编码(使用本地相关平台默认编码),然后使用 writeBytes() 方法将其写入文件,即API 文档中记录为丢弃每个字符的高位字节。

你期待什么?事实上,我很惊讶结果与原始数据有任何相似之处。

您最可能应该做的是将最后两行替换为:

outputfile.write(byte_data_array);

永远记住:字节用于数据,字符串用于文本,如果在它们之间进行转换,则始终需要注意使用的编码。

关于java - 在某些具有 Java Scripting API 的计算机上,"FF FF"被转储为 "FD",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16358090/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com