0

我想创建一个文件。Java 中的 Xls,但我不希望他被存储在任何地方。我只想创建它并提供下载。

我有以下代码,但是在下载 excel 文件后说文件无效。

private void criarFicheiroDeExemplo(RequestContext requestContext) throws IOException, InterruptedException {   
    requestContext.sResponse.setContentType("Excel.Application");
    requestContext.sResponse.setHeader("Content-Disposition", "attachment; filename =Ficheiro_de_exemplo_incidencias.xls");

    java.io.PrintWriter pw = requestContext.sResponse.getWriter();

    String ficheiro = construirFormatoFicheiroDeExemplo();
    pw.println(ficheiro);

    pw.flush();
    Thread.sleep(2000);
    pw.close();
}

private String construirFormatoFicheiroDeExemplo() {
    StringBuffer html = new StringBuffer();
    html.append("<table>"); //"Cria" a tabela
    html.append("<tr>");
    html.append("<td>");
    html.append("<Strong>ID_INCIDENCIA</Strong>");
    html.append("</td>");
    html.append("</tr>"); //"Cria" uma linha e uma coluna
    html.append("</table>");    
    return html.toString();
}

有什么建议么?

4

1 回答 1

0

将文件保存到磁盘并在文本编辑器中打开以查看它是否包含您期望的内容。如果是这样,并且 Excel 不会打开它,那么问题不在于下载过程。问题在于文件中的内容。

如果您不想搞乱生成 Excel 格式的二进制数据,并且您不需要电子表格中的公式之类的东西,您总是可以让 Excel 打开 TSV 或 CSV 格式(这只是纯文本)。

于 2013-05-06T13:35:43.590 回答