0
我的應用程序有點問題。我通過一個套接字接收數據,通過BufferedReader
。我循環使用while ((sLine = reader.readLine()) != null)
並將sLine追加到StringBuilder對象。我也花了一個新的路線\ n建設者。在繼續之前,閱讀BufferedReader的所有行
這個計劃是,一旦建設者完成了,String sTotal = builder.toString()
被調用並且總數傳遞給下一個例程。
但是,下一個例程是每行調用一次,而不是整個字符串。例程調用在上面的循環之外,所以我真的不知道爲什麼!
希望有人可以幫助...
編輯:下面的代碼提取。
public void run() {
try {
oServerSocket = new ServerSocket(iPort);
while ((!Thread.currentThread().isInterrupted()) && (!bStopThread)) {
try {
oSocket = oServerSocket.accept();
this.brInput = new BufferedReader(new InputStreamReader(this.oSocket.getInputStream()));
StringBuilder sbReadTotal = new StringBuilder();
String sReadXML = "";
while ((sReadXML = brInput.readLine()) != null) {
sbReadTotal.append("\n");
sbReadTotal.append(sReadXML);
}
sReadXML = sbReadTotal.toString();
Log.d("XMLDATA", sReadXML);
processXML(sReadXML);
} catch (Exception e) {
e.printStackTrace();
}
}
} catch (Exception e) {
/* Nothing Yet */
e.printStackTrace();
}
}
你的問題真的不清楚 - 你的意思是「下一個例程」是什麼意思?另一種方法?該方法有什麼作用?如果你發佈了一些代碼,它會更加簡單。 –
你能發佈一個更完整的代碼子集嗎? – ChaseMedallion
@ChaseMedallion&Jon - 添加代碼:) – tip2tail