如何从文本字段中获取文本并使用BufferedReader
对象传递给字符串?
我想从文本字段中获取文本并希望使用缓冲区读取器对象将其传递给字符串,然后在文本区域中打印该特定文本,然后使用PrintWriter
对象将该文本传递给socket。
我的代码..
else if(ae.getSource()==btnsend)
{
try
{
PrintWriter pw=new PrintWriter(socket.getOutputStream(), true);
BufferedReader brk=new BufferedReader(new InputStreamReader(System.in));
BufferedReader brs=new BufferedReader(new InputStreamReader(socket.getInputStream()));
String str="";
while(true)
{
// m confused after this..how to proceed..
jtxts3.getText();
str=brk.toString();
jareas1.setText(str);
pw.println();
str=brs.toString();
jareas1.setText("Client Says :-"+str);
}
}
catch(Exception ex)
{
System.out.println("Exception caught : "+ex);
}
答案 0 :(得分:1)
所以我将尝试分解您的问题并将其连接到相关代码
问题“我想从文本字段中获取文本,并希望使用缓冲区读取器对象将其传递给字符串,然后在文本区域中打印该特定文本,然后使用PrintWriter传递该文本对象到套接字......“
好的,这解释了这个jtxts3.getText();
等待!这是没有意义的。读者只是读。此语句声明您要将字符串从文本字段传递给reader对象。
好的,我们可以做到。 jareas1.setText(str);
< - 您的尝试
我们也可以这样做。 pw.println();
< - 您的尝试
对不起,我需要做所有这些来尝试了解你的流程。但是我对你的代码不了解的一件事是你有一个BufferedReader,你试图从控制台获取文本,还有一个你试图从中获取文本的文本字段。它是哪一个?
我将假装BufferedReader System.in对象不存在,因为我没有看到它的上下文。有了这一切说。看起来您的代码流程有点正确。我能发现的唯一错误是
append
代替setText
println
,但没有传递任何内容。也许你应该实际传递字符串。brs.toString();
。你甚至知道如何从BufferedReader读取输入?这是一个教程How to Read from and Write to Sockets。抱歉,我试图回答这个问题,但是当我接近一个可能的解决方案时,每当我查看你的代码时,我的思绪就更加难以理解。所以看一下教程。希望能帮助到你。下一次尝试更详细地说出你的问题,解释你想要完成的事情的逻辑顺序,以及它如何适应你的编码尝试。