if (direc.Equals(input1))
                {
                    s = direc.Substring(1, 2);  q = direc.Substring(0, 1);  m = direc.Substring(0, 2);
                    if ((judge(q,1) == "1") || (judge(q,1) == "2") || (judge(q,1) == "3") || (judge(q,1) == "4"))
                    {
                        switch (judge(s, 2))
                        {
                            case "BK":
                                database1(directoryName, dt);
                                break;
                            case "JL":
                                database1(directoryName, dt);
                                break;
                            case "KF":
                                database1(directoryName, dt);
                                break;
                            case "YB":
                                database1(directoryName, dt);
                                break;
                        }
                        switch (judge(s, 1))
                        {
                            case "S":
                                database1(directoryName, dt);
                                break;
                            case "T":
                                database1(directoryName, dt);
                                break;
                            case "F":
                                database1(directoryName, dt);
                                break;
                            case "J":
                                database1(directoryName, dt);
                                break;
                            case "L":
                                database1(directoryName, dt);
                                break;
                            case "B":
                                database1(directoryName, dt);
                                break;
                            case "Y":
                                database1(directoryName, dt);
                                break;
                            case "P":
                                database1(directoryName, dt);
                                break;
                            case "U":
                                database1(directoryName, dt);
                                break;
                            case "H":
                                database1(directoryName, dt);
                                break;
                            case "Q":
                                database1(directoryName, dt);
                                break;
                            case "C":
                                database1(directoryName, dt);
                                break;                        }
                  }
这里direc=1JL-cfs-231-hgf,input1=1JL-cfs-231-hgf,为什么s,m,q为空值阿

解决方案 »

  1.   

    s = direc.Substring(1, 2);  q = direc.Substring(0, 1);  m = direc.Substring(0, 2); 
    你确信在这行后,s,q,m都是空,应该不会吧。
      

  2.   

     怎么可能为空?    s为JL ; q为1 ; m为1J ; 
      

  3.   

    你的s,m,q为空值应该不是出现在第三行,你可能指的是judge(),你看看这个函数吧,它具体是什么我不知道。
      

  4.   

    应当不能为空值的VS功能超级强大  建议您在截取字符的那里设一个断点 这样就ok啦