gpt4 book ai didi

java - URLConnection 从 php 服务器接收到错误的文本

转载 作者:行者123 更新时间:2023-12-01 09:40:57 25 4
gpt4 key购买 nike

我有一个有 4 个 Activity 的应用程序。在第一个 Activity 中,我想从我的网站(PHP 文件)请求一些文本。第一次按下按钮获取数据时,它工作正常,但下次按下按钮时,它会返回正确的文本,但将其与之前的文本连接起来。请参阅示例:

First press: returns: "abc"
Second press: returns: "abcabc" (must be return abc)
Third press: returns: "abcabcabc" (must be return abc)
.
  1. 我每次都会清除 TextView 。
  2. 我每次都会关闭连接。
  3. 我每次都会关闭 BufferedReader
  4. 我关闭。

Activity 1:

try{
URL u = new URL(uu);
HttpURLConnection con = (HttpURLConnection) u.openConnection(Proxy.NO_PROXY);
con.setDoOutput(true);
con.setUseCaches(false);
PrintStream pr = new PrintStream(con.getOutputStream());
pr.print("code=3&arg1=" + str);
BufferedReader br = new BufferedReader(new InputStreamReader(con.getInputStream(),"UTF-8"));
String l;
while ((l=br.readLine())!=null){
z = z + "\n" + l;
}
br.close();
pr.close();
con.disconnect();
runOnUiThread(new Runnable() {
@Override
public void run() {
TextView tx = (TextView) findViewById(R.id.textView2);
tx.setMovementMethod(new ScrollingMovementMethod());
tx.setText("");
tx.setText(z);
}
});
}
catch (final Exception ex){
}

最佳答案

我不知道你在哪里声明了 z 字符串,但你显然是在附加它。

您应该清除它,或者为每个请求使用新的字符串。

并使用StringBuilder。你的内存使用量会低得多。

关于java - URLConnection 从 php 服务器接收到错误的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38460322/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com