java中附加字符串的奇怪障碍
我想将一些子字符串附加到一个名为Request的字符串变量中,但它不起作用,Request保持为空,并带有“”值。真奇怪。 请求是StringBuilder,并且是我的类成员。 客户端是套接字的一个实例。 注意:tmp不是空的 有人能帮我吗? (更改代码) 我把我所有的班级代码都放进去了。java中附加字符串的奇怪障碍,java,Java,我想将一些子字符串附加到一个名为Request的字符串变量中,但它不起作用,Request保持为空,并带有“”值。真奇怪。 请求是StringBuilder,并且是我的类成员。 客户端是套接字的一个实例。 注意:tmp不是空的 有人能帮我吗? (更改代码) 我把我所有的班级代码都放进去了。 感谢您的回复。我正在运行您的代码的一个稍加修改的版本(用于不处理套接字),我得到了预期的行为: 可能是另一个线程覆盖了请求?尝试使用局部变量。 您是否100%确定客户端输入有数据?包括新线 import ja
感谢您的回复。我正在运行您的代码的一个稍加修改的版本(用于不处理套接字),我得到了预期的行为: 可能是另一个线程覆盖了
请求
?尝试使用局部变量。您是否100%确定客户端输入有数据?包括新线
import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
public class Tmp {
public static void main(String[] args) {
new Tmp().run();
}
StringBuilder request = new StringBuilder();
public void run() {
String test= "testData\r\n";
ByteArrayInputStream client = new ByteArrayInputStream(test.getBytes());
try
{
BufferedReader clientinput = new BufferedReader(new InputStreamReader(client));
System.out.println("---------REQUEST--------");
String tmp;
while((tmp=clientinput.readLine())!=null)
{
request = request.append(tmp);
}
System.out.println(request.toString());//request is NOT empty!!!
}
catch(IOException e){e.printStackTrace();}
}
}
它是StringBuilder类的实例。如果您的请求为空,则您的文件为空。@SilviuBurcea他没有从文件中读取。您指的是哪个文件?@JoshM抱歉,流是空的。什么是
客户端
?它是文件对象吗?你能出示密码吗?
import java.io.BufferedReader;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
public class Tmp {
public static void main(String[] args) {
new Tmp().run();
}
StringBuilder request = new StringBuilder();
public void run() {
String test= "testData\r\n";
ByteArrayInputStream client = new ByteArrayInputStream(test.getBytes());
try
{
BufferedReader clientinput = new BufferedReader(new InputStreamReader(client));
System.out.println("---------REQUEST--------");
String tmp;
while((tmp=clientinput.readLine())!=null)
{
request = request.append(tmp);
}
System.out.println(request.toString());//request is NOT empty!!!
}
catch(IOException e){e.printStackTrace();}
}
}