Vector columnNames = new Vector();
String[] tableHeader = {
  new String("名字"),
new String("大小"),
  new String("类型"),
new String("修改日期")
}; columnNames.addElement(tableHeader);

解决方案 »

  1.   

    我用的JCreator, 编译时错误信息就这么多:
    <identifier> expected,
    我的为什么出错阿,
      

  2.   

    好的,如下
    import javax.swing.*;
    import javax.swing.event.*;
    import javax.swing.table.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.io.*;
    import java.util.*;public class FileTable extends JTable {
    /* String[] columnNames = {
    "名称","大小","类型","修改日期"
    };*/
    Vector columnNames = new Vector(4,1);
    String[] tableHeader = {
      new String("名字"),
    new String("大小"),
      new String("类型"),
    new String("修改日期")
    };

    // tableHeader[0] = "名字" ;
    // tableHeader[1] = "大小" ;
    // tableHeader[2] = "大小" ;
    // tableHeader[3] = "修改日期";
    /* columnNames.addElement(name);
    columnNames.addElement(size);
    columnNames.addElement(type);
    columnNames.addElement(modify);*/


    Vector subFilesInfo = new Vector(5,10);
    columnNames.addElement(tableHeader);
    public FileTable() {
    setModel( new DefaultTableModel(subFilesInfo,columnNames));
    }


    //完成更新table的功能 参数path为当前文件目录(一定为文件夹)的路径信息
    public void updateTable(String path) {
    File currentFile = new File(path);
    File[] subFiles;
    subFiles = currentFile.listFile();
    String[] fileInfo = {
    new String(),
    new String(),
    new String(),
    new String()
    };
    String fileName,fileSize,fileModifyTime,fileType;
    int  i = subFiles.length;
    for ( int i = 0; i < subFilesNum ; i ++){
    if (!subFiles[i].isDirectory())
    {
              fileName = subFiles[i].getName();
              fileSize =  new Long(subFiles[i].length()).toString();
              fileModifyTime = new Date(subFiles[i].lastModified()).toString();
              int length = fileName.length();
              for (int j = 0; j < length; j++){  
              if(fileName.charAt(j-1) == '.') {
              fileType = fileName.substring(j,length - 1);
              break;
              } else {
              fileType = new String("");
              }
                fileInfo[0] = fileName;
              fileInfo[1] = fileType;
              fileInfo[2] = fileSize;
              fileInfo[3] = fileModifyTime;  
              }
            subFilesInfo.addElement(fileInfo);   
             }                 
    }
    }
    }
      

  3.   

    问题找到.
    是因为你的addElement没有放在任何方法内. 其他注释掉的行也应该放在一个方法内.
    可以这样解决:
    {
       columnNames.addElement(tableHeader);
    }
      

  4.   

    不好意思,借phay (初学者) 的宝地回答lvy1984(可爱小甜甜) 的问题. :-)