【问题标题】:How to Suppress Extension Warning in Excel如何在 Excel 中抑制扩展警告
【发布时间】:2012-10-25 14:04:09
【问题描述】:

我从我的 JTable 创建了一个 Excel 文件。创建它的同一个按钮也会打开它。但它给出了一个提示:

您尝试打开的文件与指定的格式不同 文件扩展名。验证文件未损坏且来自 打开文件之前的可信用户。要打开文件吗?

当我单击确定时,文件打开。我正在使用 Office 2007 并将文件保存为 .xls。有没有办法从代码级别停止提示?以下是创建和打开文件的代码:

if (obj == btnExport) {
  File f = new File("Student Results");
  f.mkdir();
  try {
    TableModel model = DataBaseTable.getModel();
    FileWriter excel = new FileWriter("Student Results/" + exam  + "_"+ level + "_" + year + ".xls");
    for(int i = 0; i < model.getColumnCount(); i++){
      excel.write(model.getColumnName(i) + "\t");
    }

    excel.write("\n");

    for(int i=0; i< model.getRowCount(); i++) {
      for(int j=0; j < model.getColumnCount(); j++) {
        excel.write(model.getValueAt(i,j).toString()+"\t");
      }
      excel.write("\n");
    }

    excel.close();
    JOptionPane.showMessageDialog(this, "File Exported to " + f.getAbsolutePath(),
    "Success", JOptionPane.INFORMATION_MESSAGE);
    File opn = new File("Student Results/" + exam  + "_"+ level + "_" + year + ".xls");
    Desktop.getDesktop().open(opn);

  } catch (Exception se) {
    JOptionPane.showMessageDialog(this, se,
    "Error", JOptionPane.ERROR_MESSAGE);
  }
}

【问题讨论】:

  • 没有分区且日期需要分列和行
  • 你能更详细地解释你的最后评论吗?我不明白。 (没有分部且日期需要分成列和行
  • 好的,我没有看到用逗号代替\t 的部分。是的,它工作得很好谢谢丹尼尔库克。把它作为答案,所以我可以接受

标签: java swing excel jtable


【解决方案1】:

This MSDN 提供了几种方法(组策略或注册表操作)来说明如何抑制警告,但我认为这两种方法都不是特别实用。

我建议改为使用 CSV,因为您只是在编写文件。这些也由 Excel 打开。我相信您所要做的就是在代码中用逗号替换您的两个\ts。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-02-25
    • 2011-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-17
    • 2011-01-26
    相关资源
    最近更新 更多