为了账号安全,请及时绑定邮箱和手机立即绑定

求文件名string用法哪里出错了

http://img1.sycdn.imooc.com//571ca7da0001a85105180280.jpg==出错了

正在回答

5 回答

你把:

int index = fileName.lastIndextOf('.');

改为:

int index = fileName.lastIndexOf('.');

就可以了(你方法名写错了,多写了个t)

0 回复 有任何疑惑可以回复我~
#1

qq_言叶庭_0 提问者

非常感谢!O(∩_∩)O谢谢本人太粗心==
2016-04-24 回复 有任何疑惑可以回复我~

都感谢~~

0 回复 有任何疑惑可以回复我~

楼上说得对,是lastIndexOf();

我的代码是这样的:

public class HelloWorld {
    public static void main(String[] args) {
        // Java文件名
		String fileName = "HelloWorld.java"; 
        // 邮箱
		String email = "laurenyang@imooc.com";
		
		// 判断.java文件名是否正确:合法的文件名应该以.java结尾
        /*
        参考步骤:
        1、获取文件名中最后一次出现"."号的位置
        2、根据"."号的位置,获取文件的后缀
        3、判断"."号位置及文件后缀名
        */
        //获取文件名中最后一次出现"."号的位置
		int index = fileName.lastIndexOf('.');
        
        // 获取文件的后缀
		String prefix =fileName.substring(index+1);
        
		// 判断必须包含"."号,且不能出现在首位,同时后缀名为"java"
		if ( index!=-1&&index!=0&&prefix.equals("java") ) {
			System.out.println("Java文件名正确");
		} else {
			System.out.println("Java文件名无效");
		}
        // 判断邮箱格式是否正确:合法的邮箱名中至少要包含"@", 并且"@"是在"."之前
         /*
        参考步骤:
        1、获取文件名中"@"符号的位置
        2、获取邮箱中"."号的位置
        3、判断必须包含"@"符号,且"@"必须在"."之前
        */
	    // 获取邮箱中"@"符号的位置
		int index2 = email.indexOf('@');
        
        // 获取邮箱中"."号的位置
		int index3 = email.indexOf('.');
        
		// 判断必须包含"@"符号,且"@"必须在"."之前
		if (index2 != -1 && index3 > index2) {
			System.out.println("邮箱格式正确");
		} else {
			System.out.println("邮箱格式无效");
		}
	}
}


0 回复 有任何疑惑可以回复我~

刚改了还是运行不出来

String fileName = "HelloWorld.java"; 

        // 邮箱

String email = "laurenyang@imooc.com";

// 判断.java文件名是否正确:合法的文件名应该以.java结尾

        /*

        参考步骤:

        1、获取文件名中最后一次出现"."号的位置

        2、根据"."号的位置,获取文件的后缀

        3、判断"."号位置及文件后缀名

        */

        //获取文件名中最后一次出现"."号的位置

int index = fileName.lastIndextOf('.');

        

        // 获取文件的后缀

String prefix =fileName.substring(index+1,fileName.length());

        

// 判断必须包含"."号,且不能出现在首位,同时后缀名为"java"

if (  (prefix.equals("java")) && index >0                             ) {

System.out.println("Java文件名正确");

} else {

System.out.println("Java文件名无效");

}


        // 判断邮箱格式是否正确:合法的邮箱名中至少要包含"@", 并且"@"是在"."之前

         /*

        参考步骤:

        1、获取文件名中"@"符号的位置

        2、获取邮箱中"."号的位置

        3、判断必须包含"@"符号,且"@"必须在"."之前

        */

   // 获取邮箱中"@"符号的位置

int index2 = email.indexOf('@');

        

        // 获取邮箱中"."号的位置

int index3 = email.indexOf('.');

        

// 判断必须包含"@"符号,且"@"必须在"."之前

if (index2 != -1 && index3 > index2) {

System.out.println("邮箱格式正确");

} else {

System.out.println("邮箱格式无效");

}

}

}


0 回复 有任何疑惑可以回复我~
                // 判断必须包含"."号,且不能出现在首位,同时后缀名为"java"
		if ( index!=-1 && index!=0 && prefix.equals("java") ) {
			System.out.println("Java文件名正确");
		} else {
			System.out.println("Java文件名无效");
		}

是prefix.equals()啦,不是prefix.equal()

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

求文件名string用法哪里出错了

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信