项目使用的是JDK1.4版本,在xlsx2csv的时候代码
enum xssfDataType {
BOOL, ERROR, FORMULA, INLINESTR, SSTINDEX, NUMBER,
}
错误提示为
- 'enum' should not be used as an identifier, since it is a reserved keyword from source level 1.5 on请问有没有方法可以在JDK1.4中使用enum枚举。谢谢!
enum xssfDataType {
BOOL, ERROR, FORMULA, INLINESTR, SSTINDEX, NUMBER,
}
错误提示为
- 'enum' should not be used as an identifier, since it is a reserved keyword from source level 1.5 on请问有没有方法可以在JDK1.4中使用enum枚举。谢谢!
static final int BOOL = 0;
static final int ERROR = 1;
static final int FORMULA = 2;
static final int INLINESTR = 3;
static final int SSTINDEX = 4;
static final int NUMBER= 5;
}
定义了int变量后,
private XssfDataType nextDataType;this.nextDataType = XssfDataType.NUMBER;
后面的类型变量出错了。是不是需要把int类型改为xssfdatatype?谢谢。
如果前面定义了static final int了,后面的xssfdatatype.number肯定也是int的,前面的this.nextdatatype也要随之改成int来判断么?
public class XssfDataType {
static final XssfDataType BOOL = new XssfDataType(0);
static final XssfDataType ERROR = new XssfDataType(1);
static final XssfDataType FORMULA = new XssfDataType(2);
static final XssfDataType INLINESTR = new XssfDataType(3);
static final XssfDataType SSTINDEX = new XssfDataType(4);
static final XssfDataType NUMBER= new XssfDataType(5);
int ordin;//下标
XssfDataType(int ordin){
this.ordin = ordin;
}
}
还要请教一下。 private XssfDataType nextDataType;因为在enum枚举里面需要定义switch case方法,
当 switch (nextDataType)时候,
nextDataType定义类型是必须要int类型么?
Cannot switch on a value of type XssfDataType. Only convertible int values or enum constants are permitted谢谢!
case 0:
break;
case 1:
break;
....
}
这样不行吗?
问题解决了。非常感谢。
再问一下,xlsx文件读取后删除
File fileTemp = new File(path + filename + fileTypeNew);
fileTemp.delete();
为什么删不掉呢?.xls文件可以, .xlsx文件就删除不掉?
前面已经.flush .close掉了fileout流了。
非常感谢!
删除部分代码是
if(filetype.equals("xls")){
File fileTemp = new File(path + filename + fileType);
fileTemp.delete();
}
if(filetype.equals("xlsx")){
File fileTemp = new File(path + filename + fileTypeNew);
fileTemp.delete();
}
谢谢!
String filename = "2";
String fileType = ".xlsx";
File f = new File(path + filename + fileType);
// f.delete();
System.out.println(f.getAbsolutePath());
System.out.println(f.delete());
路径不对吧。
没有啊,打印出来的路径文件名都是正确的。但是就是delete删除不掉
xls文件可以的。xlsx文件就不行。
System.out.println(fileTemp.delete());结果为false。
但是我已经在delete之前都close了。
public static void main(String args[]) throws FileNotFoundException {
String path = "";
String filename = "b";
String fileType = ".xlsx";
File f = new File(path + filename + fileType);
FileInputStream fis = new FileInputStream(f);
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
// f.delete();
System.out.println(f.getAbsolutePath());
System.out.println(f.delete());
}