为了拿掉文檔名中的 , 的编程File outFile = new File(path + "\\" + app1Name);
File targetFile1 = new File(path + "\\" + app1Name.replace(",", " "));<-------错误行数
outFile.renameTo(targetFile1);
但出现错误
ext.report.ExportUploadDoc$Server.exportDoc from 172.16.0.209: java.lang.NoSuchMethodError: java.lang.String.replace(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;请教如何修改

解决方案 »

  1.   

    app1Name.replace(",", " ") -> app1Name.replaceAll(",", " ")
    如果是replace方法,参数是字符,即
    app1Name.replace(',', (char)0x20);
    repalceAll参数才是字符串
      

  2.   


    replace 是可以用String 的 你写个程序测试下先 
      

  3.   

    查了 api jdk1.5以后是可以用String 1.5已经 用不了 是不是你jdk版本老了
      

  4.   

    查了 api jdk1.5以后是可以用String的
    1.5以前的 用不了 
    该换jdk了兄弟
    再不然就char吧
      

  5.   

    String app1Name = "test,.txt";
    File outFile = new File(path + "\\" + app1Name);
    int p = app1Name.indexOf(",");
    app1Name = app1Name.substring(0, p) + app1Name.substring(p + 1, app1Name.length());
    File targetFile1 = new File(path + "\\" + app1Name);
    outFile.renameTo(targetFile1);
    这样就行了,不过这只能去掉一个逗号,如果要支持去掉多个,要循环找各位说法有误吧,1.4的jdk不是不可以用String,是String里没有replace方法
      

  6.   

    查文档,replace(CharSequence target, CharSequence replacement)要JDK 1.5才有,1.4的是replace(char oldChar, char newChar),但replaceAll(String regex, String replacement)--1.4有,所以用replaceAll吧,replaceAll(",", " ") 是可行的。
      

  7.   

    用replaceAll已解决
    感谢大家