char c = 'c';
        String str1 = "abcdef";
        String str2 = String.valueOf(c);
        int i = str1.indexOf(str2);
        String str3 = str1.substring(0, i);
        char[] array = str3.toCharArray();

解决方案 »

  1.   

    StringTokenizer t = new StringTokenizer(s); // s为字符串
    String b = t.nextToken("("); // "("为指定字符这样是不是简单点啊。
      

  2.   

    String s = "abcde";
        CharSequence c = s.subSequence(s.indexOf("c")-1,s.indexOf("c"));
        System.out.println(c);
      

  3.   

    这个程序我是编译执行过的,你可以试试。
    另外可能要注意subSequence()的参数,如果找到的字符在第一个的话,简单的-1可能会有StringIndexOutOfBoundsException(在J2ME里是这个Exception,不知道在J2SE里是不是一样的,反正大概是这个意思的exception)。
    我的整个程序如下:import java.util.*;public class L {
      public static void main(String[] args){
        String s = "abcde";
        CharSequence c = s.subSequence(s.indexOf("c")-1,s.indexOf("c"));
        System.out.println(c);
      }
    }
      

  4.   

    或者不管可读性的话,可以写成
    System.out.println(s.subSequence(s.indexOf("c")-1,s.indexOf("c")));