文件解析

假如c盘有个txt文本文件
内容如下:
a b d b f

然后我解析:
[code="java"]File f = new File("C:/新建 文本文档.txt");
try {
FileReader fr = new FileReader(f);
BufferedReader br = new BufferedReader(fr);

                String s ="";
                while( ( s = br.readLine())!=null  ){ //遍历第1行
                    String [] ss = s.split(" ");
                    for(String t :ss){
                            System.out.print(t+"-");
                    }

                }
            } catch (Exception e) {
                e.printStackTrace();
            } [/code]   

打印结果:
a-----b----d--------b------------f-
为什么不是
a-b-d-b-f- (怎么解析才能这样的效果呢) 而且中间打印ss的长度 发现也不是想要的 长度好长啊

String [] ss = s.split(" ");

你这里是根据空格来分隔字符的

你是想利用一个或多个空格分隔吧。
改改就行了了
[code="java"]
String [] ss = s.split("\s+");
[/code]

在split之前,把多个空格替换为一个空格

[code="java"] String s = "a b c";
s = s.replaceAll(" +", " ");[/code]

正则表达式
\s :匹配任意的空白符
\s+ 就表示匹配一个或多个