Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在不进行正常解析的情况下读取包含键值对的文件的内容_Java_Apache Camel_Mule_Fuseesb_Jbossfuse - Fatal编程技术网

Java 在不进行正常解析的情况下读取包含键值对的文件的内容

Java 在不进行正常解析的情况下读取包含键值对的文件的内容,java,apache-camel,mule,fuseesb,jbossfuse,Java,Apache Camel,Mule,Fuseesb,Jbossfuse,我的场景是从只包含键值的文件端点(如属性文件)读取一个文件,并根据该键值从中获取一些数据 除了使用自定义bean或java组件之外,您还知道如何实现它们吗 我想知道这在骡子或骆驼身上是否可行 提前感谢。我认为对于这个问题的解释,非常简单的解决方案是使用java.util.Properties类。使用仅维护键值对的Properties类加载文件。如果要使用驼峰路径来拾取文件,请执行以下操作 from("file:inbox") .convertBodyTo(Properties.class)

我的场景是从只包含键值的文件端点(如属性文件)读取一个文件,并根据该键值从中获取一些数据

除了使用自定义bean或java组件之外,您还知道如何实现它们吗

我想知道这在骡子或骆驼身上是否可行


提前感谢。

我认为对于这个问题的解释,非常简单的解决方案是使用java.util.Properties类。使用仅维护键值对的Properties类加载文件。

如果要使用驼峰路径来拾取文件,请执行以下操作

from("file:inbox")
   .convertBodyTo(Properties.class)
   .log("The foo value is {${body[foo]}")
   .log("The bar value is {${body[bar]}")
然后我们需要的是来自java.io.File->java.util.Properties的类型转换器。我们可以将其添加到机箱外的camel core中


我在Camel中记录了一张添加该类型转换器的票证:

?到目前为止,你尝试了什么,遇到了什么问题,你尝试了什么来解决这些问题,你的预期结果与实际结果有什么不同?我觉得这是一个好问题,不值得投-1票。因此,更改该值需要+1。是的,他没有给出任何代码,但问题很清楚。还有一个问题。如果入站端点是队列/主题,我可以使用相同的方法吗?属性只能从文件/InputStream/Reader加载,因此您需要执行2x convertyBodyTo,例如convertBodyTo(InputStream.class),然后是Properties.ClassThancy您Claus Ibsen@Claus:I按照您所说的转换(对于获取字符串的队列场景)1。和2。第一个给出了一个ByteArrayInputStream,我得到的错误是无法将ByteArrayInputStream转换为属性。有什么想法吗?是的,你需要等待骆驼的下一个版本,或者自己构建类型转换器