c++ - 有没有办法在 C++ 中检测或更改 EOL 格式从 Windows 到 Linux?

标签 c++ linux windows eol

我的应用程序无法读取 Windows 格式的 EOL 文件,有什么方法可以检测文件的格式吗?或者将 EOL 更改为 linux 格式? 如果格式不是 linux,我希望能够显示一条错误消息。 我知道 windows 格式 EOL 是 CRLF,linux 是 LF。

最佳答案

只是:

  • 以二进制模式打开文件
  • 找到第一个'\n'字节
  • 检查找到的前一个字节是否等于'\r'

如果你问标准库中是否有这样的功能,我会回答 - 没有。

关于c++ - 有没有办法在 C++ 中检测或更改 EOL 格式从 Windows 到 Linux?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43278467/

相关文章:

c++ - C++ 中的严格弱排序运算符

c++ - reference_wrappers 的容器(需要比较运算符?)

linux tc,u32过滤奇怪错误

java - 如何使用java将文件从Windows计算机发送(移动/复制)到服务器

php - VSCode调试器跳过断点

c++ - 指向单个位的 C/C++ 指针类型?

c++ - 我可以在内部使用 enum int 表示吗?

python - 从控制台调用函数作为参数

linux - 无法删除攻击者留下的文件$$$222.php

java - Windows 上的可移植设备路径