在OLE编辑器中保存XLS

时间:2017-05-22 08:21:11

标签: eclipse-plugin swt

如果使用64位Eclipse IDE,大多数旧的Office格式(DOC,XLS,PPT)甚至都不会打开。因此,SWT框架也无法处理它们也就不足为奇了。您可以使用已弃用的API强制these files to open,但即使这样,您也无法出于某种原因存储XLS文件。

独立测试:

final File file = // insert file here
Display display = new Display();
Shell shell = new Shell(display);
shell.setText(file.getName());
shell.setLayout(new GridLayout());
shell.setSize(800, 600);

OleFrame frame = new OleFrame(shell, SWT.NONE);
frame.setLayoutData(new GridData(GridData.FILL_BOTH));
final OleClientSite clientSite = new OleClientSite(frame, SWT.NONE, "Excel.Sheet", file);

Button button = new Button(shell, SWT.NONE);
button.setText("Save");
button.addListener(SWT.Selection, e -> clientSite.save(file, true));

shell.open();

while (!shell.isDisposed()) {
    if (!display.readAndDispatch()) {
        display.sleep();
    }
}
display.dispose();

没有例外,没有记录,没有任何记录。它只是不保存。 OleClientSite.isDirty()也未设置为false。

如何使用SWT的OLE框架保存XLS文件?

0 个答案:

没有答案