Javaを使用してファイルを読み取っています。ファイルには€文字が含まれていますが、Javaはそれを次のように解釈します¿.
つまり、ファイルの内容" 12rl+€/h
"javaからの読み取り" 12rl+¿/h
"
更新:ラクダのファイルコンポーネントを使用して読んでいます:
<camel:route id="FileProcessor">
<camel:from uri="file:c://my/temp/" />
<camel:log message="File ${body}" loggingLevel="DEBUG" logName="CamelLogger"/>
<camel:process ref="fileProcessor"/>
<camel:log message="File has been processed" loggingLevel="DEBUG" logName="CamelLogger"/>
</camel:route>
public class FileProcessor implements Processor {
private static final Logger logger = LoggerFactory.getLogger(FileProcessor.class);
public FileProcessor() {
}
@Override
public void process(Exchange exchange) throws Exception {
String fileContent = exchange.getIn().getBody(String.class);
//Buisness logic with file
}
これを修正する方法