gpt4 book ai didi

android - 如何避免回车线馈送对

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:40:16 26 4
gpt4 key购买 nike

我正在使用以下命令从 Android 手机中提取调试跟踪(二进制形式):

adb logcat -B > input.bin

然后我将此二进制数据 (input.bin) 提供给解析它的 python 脚本。

我面临的问题是在 input.bin 中:

当在 Linux shell 中发出上述命令时,0A(换行符)将被 0D0A(CR 和 LF)替换。

当在 Windows 命令提示符下发出上述命令时,0A(换行符)将被 0D0D0A 替换。

我不想要这种行为。

我试图通过将 onlcr 更改为 -onlcr 来更改我的终端设置,但没有成功。

谁在做这些改变???如何避免它们????

最佳答案

问题是 Linux 仅使用 LF 换行 (\r),而 Windows 使用 (\r\n) 作为换行和回车换行。这是命令提示符下的默认行为,因此我认为您应该采用更复杂但通用的方式,即使用 Java 程序从此命令获取输出并通过 Writer 类而不是输出流将数据写入文件。

Process exec = Runtime.getRuntime().exec("adb logcat -B");

BufferedWriter buffWriter = new BufferedWriter(new FileWriter("FileName"));

BufferedReader buffReader = new BufferedReader(new InputStreamReader(exec.getInputStream()));

buffWriter.write(buffReader.readLine());

现在两个操作系统的输出文件相同。

关于android - 如何避免回车线馈送对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6410488/

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