Java 下载的文件应该是.png
我不知道我的代码有什么问题,我尝试用sambautil从服务器下载pngJava 下载的文件应该是.png,java,samba,downloadfile,Java,Samba,Downloadfile,我不知道我的代码有什么问题,我尝试用sambautil从服务器下载png if (!path.equals("")) { SambaUtil su = new SambaUtil(); byte[] data = su.openfile(path); log.info(path); ByteArrayInputStream inStream = new ByteArrayInputStream(su.openfile(path)); PrintWrite
if (!path.equals("")) {
SambaUtil su = new SambaUtil();
byte[] data = su.openfile(path);
log.info(path);
ByteArrayInputStream inStream = new ByteArrayInputStream(su.openfile(path));
PrintWriter outStream1 = resp.getWriter();
int bytes;
while ((bytes = inStream.read()) != -1) {
outStream1.write(bytes);
}
inStream.close();
outStream1.close();
}
连接是正确的,但输出数据似乎是错误的
有什么想法吗?这是因为您正在获取构成.PNG文件的字节并将其打印出来,而不是将其保存为文件,我认为这是您想要做的 而不是
PrintWriter outStream1 = resp.getWriter();
换成这个
OutputStream outStream1 = new FileOutputStream("somefile.png");
然后打开“somefile.png”,您应该能够看到通过Samba下载的图像为什么要打开两次<代码>su.openfile(路径)代码>你看到溪流乞讨时的字母JFIF了吗?这是因为您下载的图像文件是JPEG,而不是PNG。