彼岸的她i 2022-11-25 11:57 采纳率: 100%
浏览 12
已结题

MyEclipse汉化报错

按照csdn搜到的MyEclipse汉化教程走到运行代码后,运行不了代码,报错
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2
at CreatePluginsConfig.print(CreatePluginsConfig.java:46)
at CreatePluginsConfig.main(CreatePluginsConfig.java:85)
运行代码
import java.io.File;

/**

  • MyEclipse 8.x安装插件代码生成器
  • @author Administrator
  • /
    public class CreatePluginsConfig {
    private String path; public CreatePluginsConfig(String path) { public void print() {
      List list = getFileList(path);  
      if (list == null) {   
          return;   
      }   
    
      int length = list.size();   
      for (int i = 0; i < length; i++) {   
          String result = "";   
          String thePath = getFormatPath(getString(list.get(i)));   
          File file = new File(thePath);   
          if (file.isDirectory()) {   
              String fileName = file.getName();   
              if (fileName.indexOf("_") < 0) {   
                  continue;   
              }   
              String[] filenames = fileName.split("_");   
              String filename1 = filenames[0];   
              String filename2 = filenames[1];   
              result = filename1 + "," + filename2 + ",file:/" + path + "\\"  
                      + fileName + "\\,4,false";   
              System.out.println(result);   
          } else if (file.isFile()) {   
              String fileName = file.getName();   
              if (fileName.indexOf("_") < 0) {   
                  continue;   
              }   
              String[] filenames = fileName.split("_");   
              String filename1 = filenames[0]+"_"+filenames[1];   
              String filename2 = filenames[2].substring(0,filenames[2].lastIndexOf("."));   
              result = filename1 + "," + filename2 + ",file:/" + path + "\\" + fileName + ",4,false";   
              System.out.println(result);   
          }   
    
      }   
    
    } public List getFileList(String path) {
      path = getFormatPath(path);   
      path = path + "/";   
      File filePath = new File(path);   
      if (!filePath.isDirectory()) {   
          return null;   
      }   
      String[] filelist = filePath.list();   
      List filelistFilter = new ArrayList();   
    
      for (int i = 0; i < filelist.length; i++) {   
          String tempfilename = getFormatPath(path + filelist[i]);   
          filelistFilter.add(tempfilename);   
      }   
      return filelistFilter;   
    
    } public String getString(Object object) {
      if (object == null) {   
          return "";   
      }   
      return String.valueOf(object);   
    
    } public String getFormatPath(String path) {
      path = path.replaceAll("\\\\", "/");   
      path = path.replaceAll("//", "/");   
      return path;   
    
    } public static void main(String[] args) {
      new CreatePluginsConfig("D:\\MyEclipse\\Common\\plugins").print();
    
    }
    }
  • 写回答

2条回答 默认 最新

  • 夜郎king 2022博客之星IT其它领域TOP 12 2022-11-25 12:33
    关注

    这是明显的数组下标越界了,一般是因为要方位数组中没有的数据导致的,建议检查一下数组的参数。

    本回答被专家选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月12日
  • 专家已采纳回答 12月4日
  • 创建了问题 11月25日

悬赏问题

  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序