读书人

java swing (1) 导出excel文件并打开

发布时间: 2012-11-22 00:16:41 作者: rapoo

java swing (一) 导出excel文件并打开

java swing (1) 导出excel文件并打开


点击XXX管理系统中的“导出Excel”按钮,然后弹出如上图,点击“保存”以后,该Excel就保存到指定路径,并且打开。


上述的动作,其实不难,主要是打开该文件时的路径问题。


下面是我的一些构想和实现,仅此记录。


1 . JFileChooser获取导出的路径path,然后装载数据,装载的代码我就不贴出了,这不是重点。

if (MessageTools.showConfirmDialog("导出数据成功,要打开该文件吗?"))        {//path = D:\\Backup\\我的文档\\2012-11-09_110848.xlsString fileName = path.replace('\\', '/');StringTokenizer st = new StringTokenizer(fileName, "/");while (st.hasMoreTokens())            {              String sub = st.nextToken();              if ((sub.indexOf(' ') != -1) || (sub.indexOf('&') != -1) || (sub.indexOf('(') != -1) || (sub.indexOf(')') != -1) || (sub.indexOf('[') != -1) || (sub.indexOf(']') != -1) || (sub.indexOf('{') != -1) || (sub.indexOf('}') != -1) || (sub.indexOf('^') != -1) || (sub.indexOf('=') != -1) || (sub.indexOf(';') != -1) || (sub.indexOf('!') != -1) || (sub.indexOf('\'') != -1) || (sub.indexOf('+') != -1) || (sub.indexOf(',') != -1) || (sub.indexOf('`') != -1) || (sub.indexOf('~') != -1))   //过滤掉特殊字符              {              fileName = fileName.replaceFirst(sub, "\"" + sub + "\"");              }            }// fileName = D:/Backup/我的文档/2012-11-09_110848.xlsRuntime.getRuntime().exec("cmd /E:ON /c start " + fileName);        }

用Runtime.getRuntime().exec()打开文件,文件路径含有特殊符号的话则打开不了,需要把文件路径过滤成特定格式。如:

过滤前 : D:\\Backup\\我的文档\\2012-11-09_110848.xls


过滤后 : D:/Backup/我的文档/2012-11-09_110848.xls



OK.

后记: 蛋疼的java们的XXX管理系统啊,jsp或者Extjs写写界面也就算了,连swing也上。。。哎,坑爹啊!估计以后得有好几篇swing了。



读书人网 >软件开发

热点推荐