当我从服务器读取文件内容时,它返回以下错误消息:
Caused by: java.net.SocketException: Connection reset by peer: socket write error
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(Unknown Source)
at java.net.SocketOutputStream.write(Unknown Source)
at org.apache.coyote.http11.InternalOutputBuffer.realWriteBytes(InternalOutputBuffer.java:215)
at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:462)
at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:366)
at org.apache.coyote.http11.InternalOutputBuffer$OutputStreamOutputBuffer.doWrite(InternalOutputBuffer.java:240)
at org.apache.coyote.http11.filters.ChunkedOutputFilter.doWrite(ChunkedOutputFilter.java:119)
at org.apache.coyote.http11.AbstractOutputBuffer.doWrite(AbstractOutputBuffer.java:192)
at org.apache.coyote.Response.doWrite(Response.java:504)
at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:383)
... 28 more
Run Code Online (Sandbox Code Playgroud)
我的servlet程序是
response.setContentType("application/octet-stream");
response.setHeader("Content-Disposition","attachment;filename="+filename);
FileInputStream in = new FileInputStream(new File(filepath));
ServletOutputStream output=response.getOutputStream();
byte[] outputByte=new byte[4096];
while(in.read(outputByte,0,4096)!=-1){
output.write(outputByte,0,4096);//error indicates in this line
}
in.close();
output.flush();
output.close();
Run Code Online (Sandbox Code Playgroud)
如何解决这个问题?
嗨我想将包含标签和按钮等组件的面板转换为图像文件.
我已经完成了以下代码.图像已保存.但面板的内容不可见或保存.任何人都可以告诉我如何使用其组件保存面板.
码:
package PanelToImage;
import java.awt.Color;
import java.awt.image.BufferedImage;
import java.io.File;
import javax.imageio.ImageIO;
import javax.swing.*;
public class sample extends JPanel {
public JPanel firstpanel;
public JPanel secondpanel;
JLabel label1, label2;
JButton button1, button2;
public sample() {
firstpanel = new JPanel();
firstpanel.setSize(400,300);
firstpanel.setBackground(Color.RED);
secondpanel = new JPanel();
secondpanel.setBackground(Color.GREEN);
secondpanel.setSize(400,300);
label1 = new JLabel("label1");
label2 = new JLabel("label2");
button1 = new JButton("button1");
button2 = new JButton("button2");
firstpanel.add(label1);
firstpanel.add(button1);
secondpanel.add(label2);
secondpanel.add(button2);
saveImage(firstpanel);
add(firstpanel);
// add(secondpanel);
}
public static void main(String args[]) {
JFrame …Run Code Online (Sandbox Code Playgroud) 我想获得根节点的所有子节点.
例如:
Root
child1
child1.child1
child2
child2.child1
Run Code Online (Sandbox Code Playgroud)
现在我想得到两个名为"child1"和"child2"的子节点.
怎么做?有可能吗?
请帮帮我,提前谢谢..
我希望在字符串中每两个字符后添加空格.
例如:
javastring
Run Code Online (Sandbox Code Playgroud)
我想把它变成:
ja va st ri ng
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
我想从一个完整的单词中获取String的特定部分.
例如:
我有以下字符串.
# STRING_VALUES #
Run Code Online (Sandbox Code Playgroud)
一句话如下
<p># STRING_VALUE #<br /># CMESSAGE #<br /># CUSTOMERADDRESS #<br /><br /></p>
Run Code Online (Sandbox Code Playgroud)
从上面,我想得到如下字符串:
STRING_VALUES
CMESSAGE
CUSTOMERADDRESS
Run Code Online (Sandbox Code Playgroud)
如何获取上面的字符串?我坚持这个.
当我将子节点插入根节点时,根节点不会自动展开.
我想在将子节点插入根节点后自动扩展根节点.
提前致谢..
嗨,我是JavaMail的新手.
我想上传一个文件作为附件.它只存储文件名.
文件仅使用文件名成功附加,而不是该文件的内容.
如何解决它.提前致谢...
我试过以下代码:
Message message = new MimeMessage(session);
message.setFrom(new InternetAddress(fromAddress));
message.setRecipients(Message.RecipientType.TO,
InternetAddress.parse(toAddr));
if (subject == null) {
message.setSubject("");
} else {
message.setSubject(subject);
}
if (attachedFile == null || attachedFile.equalsIgnoreCase("")) {
if (content == null) {
message.setText("");
} else {
message.setText(content);
}
} else {
// Create the message part
BodyPart messageBodyPart = new MimeBodyPart();
if (content == null) {
messageBodyPart.setText("");
} else {
messageBodyPart.setText(content);
}
// Create a multipar message
Multipart multipart = new MimeMultipart();
// Set text …Run Code Online (Sandbox Code Playgroud)