gpt4 book ai didi

创建 .mid 文件 : writing a '\n' causes '\r\n' in Windows

转载 作者:可可西里 更新时间:2023-11-01 11:15:53 26 4
gpt4 key购买 nike

我通过将字节写入文件并将其另存为 .midi 创建了一个 .mid 文件。我可以运行它并且它可以工作,但在某些特殊情况下它不会。

如果我写入一个包含 \n 的字节(ASCII 10),那么它将写入 2 个字节 \r\n,这使得.mid 不可运行。 (这对于 Windows 机器来说是正常的,但在我的情况下并不理想。)编写 \n 的示例可能是在选择由 \n 表示的 key 时>。

是否有一种解决方法来编写 \n 而不是 \r\n 或其他方法来确保写入的字节是 ASCII 10在 Windows 机器上?

谢谢!

最佳答案

在 linux/unix 上,创建文件时指定 "wb" 还是 "w" 都没有关系。

但是在 Windows 中使用 fopen 创建一个文本文件意味着所有的 \n 都被转换为 \r\n,所以如果你重新使用它来创建二进制文件,如果有一些字节值为“10”(换行),则二进制文件将“损坏”

简单的解决方案:在所有平台上创建二进制文件时始终使用 fopen("file.bin","wb"),以便您的代码可移植。

关于创建 .mid 文件 : writing a '\n' causes '\r\n' in Windows,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45849284/

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