去空行问题
每个人编写的识别文件的格式的程序是不同的,于是乎就要求对文件格式有非常高的精准度,每一个文件的格式必须一模一样。
于是这个问题在解决之前影响了整个程序的运行,提高团队合作的一致性。
那么去空行的代码如下,没有写输出文件流,你可以直接把控制台的结果,ctrl+A复制到文本之中,或者参加本人上一条博客。
package tools;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.Set;
public class denullline {
public static void main(String[] args) {
Set values = new LinkedHashSet();
try {
BufferedReader bf = new BufferedReader(new InputStreamReader(new FileInputStream("/Users/apple/Documents/urls.txt")));//文件的位置
String value = "";
while((value =bf.readLine())!=null){
value = value.trim();
if(!value.equals("")){
values.add(value);
}
}
Iterator it = values.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
**在Java中使用Set,可以方便地将需要的类型,以集合类型保存在一个变量中.主要应用在显示列表.
Set是一个不包含重复元素的collection。更确切地讲,set 不包含满足 e1.equals(e2) 的元素对 e1 和 e2,并且最多包含一个 null 元素。正如其名称所暗示的,此接口模仿了数学上的 set 抽象。**
以下是在JAVA中使用Set的范例:
import java.util.*;
public class test {
public static void main(String[] args) {
// TODO Auto-generated method stub
Set set=new HashSet();
set.add("abc");
set.add("cde");
set.add("efg");
set.add("fgh");
set.add("abc"); //重复的abc,set会自动将其去掉
System.out.println("size="+ set.size() );
List list = new ArrayList();
list.add("abc");
list.add("aaa");
list.add("fff");
set.addAll(list); //将list中的值加入set,并去掉重复的abc
System.out.println("size="+ set.size() );
for( Iterator it = set.iterator(); it.hasNext(); )
{
System.out.println("value="+it.next().toString());
}
}
}