我正在尝试解析具有csv分隔recs的日志文件。所有行将被分隔为8个字段。在某些行中,最后一个字段Field8包含额外的逗号,这些逗号必须忽略(不应分隔)。问题行如下(注意Field8):
Test, Field2,5731960,Field4,,4,32,Field8 MyOp ( abc,def )我不能要求更改日志格式。在bindy中有没有一种方法可以说从pos 8到pos 100,放在pos 8中?我更喜欢spring dsl。我想避免自定义解析器,如果已经存在的话。
@CsvRecord(separator = ",")
public class SysActivity{
....
@DataField(pos = 8, required = true) // is there a way I can mention pos8 till end of line
protected String logMessage;
}使用camel 10.0
发布于 2013-05-20 14:22:27
不,这不可能。但我认为这可能是一个有效的用例,我想其他一些人在过去也问过这个问题。
我已经记录了一张票据,希望在未来的https://issues.apache.org/jira/browse/CAMEL-6381中对此进行改进。
发布于 2013-05-20 04:48:24
在camel中,您可以使用拆分器来拆分邮件正文。在这种情况下,您可以在拆分器中使用正则表达式,如splitter文档中所述。
https://stackoverflow.com/questions/16615826
复制相似问题