1. package org.jr.swing.filter;
  2. /**
  3. * Copyright: Copyright (c) 2002-2004
  4. * Company: JavaResearch(http://www.javaresearch.org)
  5. * 最后更新日期:2003年4月2日
  6. * @author Cherami
  7. */
  8. import java.io.*;
  9. /**
  10. * 压缩文件类型过滤器。
  11. * <b>此类在0.6版本的时候方式重大变化,通过继承自CombineFileFilter实现了双重功能。</b>
  12. * @since 0.1
  13. */
  14. public class ZipFileFilter
  15. extends CombineFileFilter {
  16. /**
  17. * 构造一个针对swing的ZipFileFilter。
  18. * @since 0.6
  19. */
  20. public ZipFileFilter() {
  21. super(SWING);
  22. }
  23. /**
  24. * 根据指定类型构造一个ZipFileFilter。
  25. * @param type 过滤器类型
  26. * @since 0.6
  27. */
  28. public ZipFileFilter(int type) {
  29. super(type);
  30. }
  31. /**
  32. * 判断指定的文件是否可以被接受。
  33. * @param file 需要判断的文件
  34. * @return 文件的扩展名为zip、jar或者是一个目录时返回true,否则返回false。
  35. * @since 0.6
  36. */
  37. protected boolean acceptFile(File file) {
  38. if (file.getName().toLowerCase().endsWith(".zip") ||
  39. file.getName().toLowerCase().endsWith(".jar") ) {
  40. return true;
  41. }
  42. else {
  43. return false;
  44. }
  45. }
  46. /**
  47. * 返回过滤器的描述字符串。
  48. * @return 过滤器的描述字符串“*.zip,*.jar”
  49. * @since 0.1
  50. */
  51. public String getDescription() {
  52. return "*.zip,*.jar";
  53. }
  54. }