2014-07-15 185 views
1

我想製作一個小程序,需要輸入控制檯的輸入信息,例如用戶名,學校和其他信息,然後創建一個文件名爲用戶名的文件。每個文件將位於學校命名的文件夾中。我不知道如何創建一個具有這些品質的文件,因爲Camel似乎在讀取任何輸入之前確定路徑和文件名。有沒有辦法解決這個問題?Apache-Camel控制檯輸入

回答

1

還有就是文件組件頁面上的例子,像這樣:

// set the output filename using java code logic, notice that this is done by setting 
// a special header property of the out exchange 
exchange.getOut().setHeader(Exchange.FILE_NAME, "report.txt"); 

,你可以用你想使用的文件名替換REPORT.TXT。

至於目錄,你能不能在報頭中的目錄名存儲和端點引用它:

.to("file://${headers.directory}"); 

更多在這裏信息:http://camel.apache.org/file2.html

+0

感謝您的答覆。文件名部分正常工作。但是,我無法弄清楚如何讓目錄工作。當我嘗試設置目錄時,它會導致異常。帶有$ {}佔位符的動態表達式是不允許的。使用fileName選項來設置動態表達式。 \t at org.apache.camel.model.RouteDefinition.addRoutes(RouteDefinition.java:910)' – user3840974

+0

沒關係我想通了。而不是使用'to(Endpoint endpoint)'我用'recipientList(simple(「$ {header.directory}」))' – user3840974