日期:2014-05-20  浏览次数:20770 次

一次识别多个字符的问题
现在有个文件,里面的内容是每隔一定数量的字符就会出现 ":     "(不包扩双引号,冒号后面有2个空格)。
我想写一个方法,以 ":     "为分隔,一但读到这个 ":     "
就把“:     "之前的内容加入到list中
int   len;
while(len!=-1){
            List <String>   list=new   ArrayList() <String> ;
            while(condition){
            }
            list.add();
}
我想在condition里写     !str.equals( ":     ")   请问这里的str怎么读出来?
I/O包里没找到能连续的读3个字符的方法
谢谢。

------解决方案--------------------
那就一个一个的读啊连续读三个判断
------解决方案--------------------
变通一下,先把所有的读出来,然后再对这些字符进行处理
------解决方案--------------------
从第一个字符往后扫描就可以了

记下: 的位置, 然后到下一个: 的位置时, 读取之间的字符串

注意一下开头和结尾的特殊处理
------解决方案--------------------
.......JDK中有专门提供一个字符串分隔的类java.util.StringTokenizer
按你的要求:
StringTokenizer st = new StringTokenizer( "你要分割的字符串 ", "分割符 ");
然后跌代就好了
while(st.hasMoreTokens()) {
String token = st.nextToken();
list.add(token);
}
完了,大概就是这么个样子,你自己看看API再试试
------解决方案--------------------
StringTokenizer不就行了