eclipse Java文件打开异常解决方法 :java.lang.StringIndexOutOfBoundsException: String index out of range: 26

这两天调程序弄得整个人都不好了。晚上加班写程序,自己都不知道手指敲的是什么字母了。。。。。。这个时候又发现了一个大大的问题,eclipse里Java文件没有报错,却打不开了。当时我脸都绿了。
Java文件打不开截图
然后我就直接到工程文件里面用notepad++ 打开,没问题。经过一番探索,终于发现了原因。至于在eclipse里打开这个文件,有两种方法。
第一种方法是应急措施,我估计对于这一类问题都好使。就是在notepad++里打开后,全选+剪切,然后到eclipse里,把错误的文件关闭重新打开,再把文件粘贴进去。这个时候要是你的程序没有bug就一样可以了。
这个方法治标不治本,刷新后这个Java文件还是打不开。不过救急用还是不错的。但是,一定要注意的是,你全选剪切了后,一定先把内容粘贴上,要不然程序可就没有了。(notepad++返回好像也是可以,不过不建议冒险啊!)
第二种方法是解决程序中的问题,不过这个可能的原因有很多,我的原因是在变量声明的后面加上了 “//”,如下:

……
public class ActiLogin extends Activity{


    private Context context;
    private Button loginBtn,forgetPasswdBtn;
    private EditText EditUsername,EditPasswd;
    private String userName,password;
    private String target;
    private Handler handler;
    private String result;
    private SharedPreferences sharedPre;
    @SuppressLint("HandlerLeak")
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_login);
        context = ActiLogin.this;
……

这样程序是没有问题的,然后要是这样:

……
public class ActiLogin extends Activity{


    private Context context;//
    private Button loginBtn,forgetPasswdBtn;
    private EditText EditUsername,EditPasswd;
    private String userName,password;
    private String target;
    private Handler handler;
    private String result;
    private SharedPreferences sharedPre;
    @SuppressLint("HandlerLeak")
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_login);
        context = ActiLogin.this;
……

就会出现上面的错误了。至于怎么改,就不废话了。

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页