【问题标题】:How to convert a CRLF into a \n string [duplicate]如何将 CRLF 转换为 \n 字符串 [重复]
【发布时间】:2020-08-27 09:00:03
【问题描述】:

我正在寻找一种将 CRLF 转换为 \n 的方法。 示例:

我有什么:

Line 1
Line 2

我的期望:

Line 1\nLine 2

我有一个讨厌 CRLF LF 和行尾的应用程序?

希望在更糟糕的 shell 脚本或 java 应用程序中执行此操作。

谢谢

【问题讨论】:

  • 不幸的是没有
  • @chubby.skelton : 你的系统上没有安装dos2unix 吗?你运行的是什么操作系统?

标签: java python shell newline backslash


【解决方案1】:

这可以通过在 n 之前使用第二个斜杠来转义第一个斜杠来解决。

您的带有打印语句的代码如下所示:

System.out.println("Line 1\\nLine 2");

【讨论】:

    【解决方案2】:

    Shell 可能会快得多,具体取决于文件的大小。

    如果你只想改说一个“|”

    cat file.txt | tr '\n' '|'
    

    输出:

    Line1|Line2|
    

    如果您必须转换为字符串(而不是一个字符)

    cat file.txt | tr '\n' '|'  | sed s/\|/##/g
    

    输出:

    Line1##Line2##
    

    【讨论】:

      【解决方案3】:

      使用 GNU awk:

      $ awk 'BEGIN{RS="\r?\n";ORS="\\n"}1' file
      

      输出:

      Line 1\nLine 2\n$
      

      也适用于 mawk 和 Busybox awk。

      【讨论】:

        猜你喜欢
        • 2012-03-13
        • 2018-07-24
        • 2012-04-13
        • 2021-06-17
        • 2012-10-22
        • 2019-11-28
        • 2019-12-06
        • 2015-06-02
        • 2015-07-18
        相关资源
        最近更新 更多