」傳去700個字元,但實際上卻只回來3、4百個字元」
」傳回已斷詞過的詞性,不到一半」經過測試後發現,用本程式傳長一點的文章斷詞,就會出現此問題。Trace 一下 code :
// Blocks until send returns.
byte[] msg = Encoding.Default.GetBytes(xmlString);
byte[] bytes = new byte[1024];
int i = _conn.Send(msg);
// Get reply from the server.以上程式碼表示送出 bytes 格式的 msg 並透過 bytes 當作 buffer 接收從 server 回傳的結果。
i = _conn.Receive(bytes);
傳回的字串會加上 CKIP 的 tagging 結果,所以傳回的字串會比傳出去的長得多,而當傳回的文章太長,在 buffer 只有 1k 的情況下,就會發生」傳去700個字元,但實際上卻只回來3、4百個字元」的狀況了!
所以只要把 buffer 試情況加大,例如把 buffer 改成送出字串的 5 倍:
//Set the size of buffer 5 times of the original string這樣就沒問題囉!
int size = msg.Length * 5;
byte[] bytes = new byte[size];
改版的 Code Download:
CKIPforCSv2.1.rar
3 則留言:
謝謝啦~
載點掛了耶,請大大補一下 謝啦。
已經 update 囉 :)
張貼留言