【问题标题】:Camel replace all CRLF with LF using Simple DSLCamel 使用 Simple DSL 将所有 CRLF 替换为 LF
【发布时间】:2013-08-29 10:39:12
【问题描述】:

我正在尝试用 LF 替换输入数据的 CRLF,但这会破坏路线。我的代码如下所示

from(fromEndpoint)
    .convertBodyTo(byte[].class, "iso-8859-1")
    .setBody(simple("body.replaceAll(\r\n, \n)"))....

如果我把 setbody 拿出来,它就完美了。我只想要平台相关的换行符

任何想法我做错了什么?

谢谢

【问题讨论】:

  • 错误的堆栈跟踪可能很有用。无论如何,我认为您应该在简单表达式的开头添加 ${ 并在末尾添加 }。也不要忘记将您的 \r\n 和 \n 引用为字符串文字。
  • 您使用什么 Camel 版本。此外,您应该在要替换的所有参数周围使用 ',例如 '\r\n','\n'

标签: java apache-camel


【解决方案1】:

解决了

from(fromEndpoint)
    .convertBodyTo(byte[].class, "iso-8859-1")
    .setBody(body().regexReplaceAll("\\r\\n", "\\\n"))

【讨论】:

    猜你喜欢
    • 2022-11-10
    • 1970-01-01
    • 2010-12-08
    • 1970-01-01
    • 1970-01-01
    • 2011-09-23
    • 1970-01-01
    • 2021-08-07
    • 2022-10-24
    相关资源
    最近更新 更多