1

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
    }

これを修正する方法

4

1 に答える 1

3

Camel を使用したことはありませんが、Google はこのドキュメント ページに案内してくれました。ここでは、文字セットを指定するオプションを URL に追加できることが説明されています。

file:c://my/temp/?charset=UTF-8
于 2012-07-16T10:43:50.960 に答える