gpt4 book ai didi

java - 写入文件时将二进制字符串转换为字节而不是字符

转载 作者:行者123 更新时间:2023-12-01 13:35:50 25 4
gpt4 key购买 nike

我只想将文件写入字节而不是字符。

String binaryString = "10110101"

我正在使用

byte mybyte  = Byte.parseByte(binaryString,2);

我想将这个转换后的字节作为字节而不是字符写入文件。

我正在使用:

FileOutputStream fos1 = new FileOutputStream(new File("output"));
fos.write(mybyte);

但是写入后,当我看到文件时,字节实际上被写入为字符。

我在转换过程中做错了什么吗?如何让它写成字节而不是字符

编辑:

就像字符串101101010111001011111000(一次取8位,然后写入文件):它被转换为“Z9|”。

最佳答案

您实际上将二进制数据 10110101 写入该文件,但当您在文本编辑器中打开该文件时,它将显示为字符。

如果您想编写代表给定数字的文本(例如以十进制形式),请使用编写器:

FileOutputStream fos1 = new FileOutputStream(new File("output"));
OutputStreamWriter w = new OutputStreamWriter(fos1, StandardCharsets.UTF_8);
w.write(""+mybyte); // ""+mybyte creates a string with the decimal representation of mybyte

关于java - 写入文件时将二进制字符串转换为字节而不是字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21285080/

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