[請益] 用system 呼叫java程式 要如何輸入中文參數呢

看板PHP作者 (嗯嗯)時間18年前 (2007/12/19 16:05), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串1/1
最近在嘗試建立一個搜尋引擎 利用用java 引用lucene 2.0 來建立好索引 而從php 輸入搜尋字串 利用 echo system ("java -classpath \".:/usr/src/jdk1.5.0_03/lib:/home/tttt/WWW/try_linux/lucene-core-2.2.0.jar:\" TxtFileSearcher \"$keyword_encode\" 2>&1"); php 有設定header header('Content-Type: text/html; charset=utf-8'); 也有利用iconv $keyword_encode = iconv("big5", "utf-8", $$keyword); 但是對於中文搜尋字串 始終無法執行 程式因為吃進去的是亂碼 而無法找到結果 利用 String enc = System.getProperty("file.encoding"); System.out.println("encoding: " + enc); 去檢查 目前的兩個平台 得到的系統編碼如下 win : MS950 linux : ANSI_X3.4-1968 我的main裡面 是這樣寫的 try { Query(args[0] ,indexDir); } catch (Exception e) { System.out.println("Exception:" + e.getMessage()); } 請問一下 是我在php輸入時的編碼 需要再做調整 ? 還是我應該在java 這一端 把 args[0] 改編碼呢 ? -- A: Are you kidding? B: No, I'm serious. A: 妳是凱蒂嗎? B: 不,我是希瑞亞斯. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.120.39.133

12/20 20:26, , 1F
console預設的編碼問題,你在執行java之前加一行來改LANG
12/20 20:26, 1F

12/21 09:39, , 2F
改lang ? 是指說用export
12/21 09:39, 2F
文章代碼(AID): #17QD3csr (PHP)
文章代碼(AID): #17QD3csr (PHP)