kgdxpr 2 years ago
commit aa01c8fe68

@ -29,10 +29,7 @@ import org.apache.poi.xssf.usermodel.XSSFCell;
import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import javax.servlet.http.HttpServletResponse;
import java.io.*; import java.io.*;
import java.net.URISyntaxException;
import java.net.URL;
import java.text.ParseException; import java.text.ParseException;
import java.util.*; import java.util.*;
@ -831,23 +828,18 @@ public class CollectController extends Controller {
if (type_id == 2) { if (type_id == 2) {
String pdfPath = excelPath.replace(".xlsx", ".pdf"); String pdfPath = excelPath.replace(".xlsx", ".pdf");
AsposeUtil.xls2pdf(excelPath, pdfPath); AsposeUtil.xls2pdf(excelPath, pdfPath);
HttpServletResponse response = getResponse(); /**
BufferedInputStream br = new BufferedInputStream(new FileInputStream(pdfPath)); * java.io.IOException: UT010029: Stream is closed
byte[] buf = new byte[1024]; * HttpServletrequestresponse, 使
int len; */
response.reset(); // 非常重要 OutputStream outputStream = getResponse().getOutputStream();
URL u = new URL("file:///" + pdfPath); outputStream.write(FileUtil.readBytes(pdfPath));
response.setContentType(u.openConnection().getContentType()); outputStream.flush();
String fileName = pdf_filename;
response.setHeader("Content-Disposition", "inline; filename=" + fileName);
OutputStream out = response.getOutputStream();
while ((len = br.read(buf)) > 0) out.write(buf, 0, len);
br.close();
out.close();
renderNull(); renderNull();
} }
} }
/** /**
* *
* *

@ -22,7 +22,6 @@ import java.net.URISyntaxException;
import java.nio.charset.StandardCharsets; import java.nio.charset.StandardCharsets;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.util.*; import java.util.*;
import java.util.regex.Matcher; import java.util.regex.Matcher;
import java.util.regex.Pattern; import java.util.regex.Pattern;

Loading…
Cancel
Save