return filename.Substring(filename.LastIndexOf("\\")+1,filename.LastIndexOf("\."));

解决方案 »

  1.   

    楼主的字串没有设置@无转义改变,则应该这样
    return filename.Substring(filename.LastIndexOf("\")+1,filename.LastIndexOf("."));不过这样的处理还是不怎么妥的,如我是ABC.doc.bak文件则会出错,
    正则表达式处理这类应该更好,但不熟悉
      

  2.   

    试试:
    string s=Path.ChangeExtension(youfilename,null);
      

  3.   

    C# ,char[] chr=new Char[] {'.','\\'};
    string[] file=filename.Split(chr);
    filename=file[file.Length-2];
    请赐教
      

  4.   

    哎,我漏了考虑 ABC.doc.bak 这种情况了。
      

  5.   

    试试:
    string s=Path.ChangeExtension(Path.GetFileName(yourfilename),null);
      

  6.   

    //以\为基准分隔文件名,分别存入str_file_url数组中
    string[] str_file_url=dpf_file1.FileName.Split('\\');
    //取得最后一个\分开的字符串,也就是文件名
    string str_postfile_name=str_file_url[str_file_url.Length-1];
    //以\为基准分隔文件名存入str_file_url数组中
    string[] str_file_extension=str_postfile_name.Split('.');
    //取得文件名
    string str_postfile_extension=str_file_extension[0];
      

  7.   

    如果你确认这个字符串是只包含文件名,可以用:
    int index=filename.LastIndexOf("\");
    filename.Substring(index+1,filename.IndexOf(".",index));