05/08/09 21:24:22 .net
JAVAでretrievalWordという変数にModern Artsというような文字列をいれて,
下記のような検索プログラムにより,検索エンジンnamazuの
入力として渡しています.
この場合,namazuには,
namazu --max=2000000 "{Modern Arts}" /home/jikken/index_0
という入力が渡される事になります.
なおnamazuは,"{Modern Arts}"という検索がいった場合,
"{}"で囲まれた文字列がフレーズとして検索されるという機能をもっています.
つまりターミナルから
namazu --max=2000000 "{Modern Arts}" /home/jikken/index_0
と入力するとModern Artsの検索としてうまく行くのですが,
java経由で下記のプログラムからnamazuへ検索要求をしても
namazuでは,
"{Modern Arts}"という文字列の検索を行ってしまい,
Modern Artsの検索がうまくいきません.
String proscmd = "namazu --max=2000000 ";
proscmd = proscmd + "\"{" + retrievalWord + "}\" " + indexdir;
System.out.println("proscmds : " + proscmd);
Process process = Runtime.getRuntime().exec(proscmd);
結果
namazu --max=2000000 "{Modern Arts}" /home/jikken/index_0
この原因がどういう点にあるのかを教えて頂けないでしょうか?
もう長いことこれに時間をかけています。でもわかりません。
宜しくお願い致します.