package test;import java.io.BufferedReader; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import java.util.ArrayList; import java.util.List;public class Test {
public static final File f = new File("c:/user.txt");
public static void main(String[] args) { if(!f.exists()) { System.out.println("该文件不存在!"); System.exit(-1); } GetUser gu = new GetUser(); List<User> l = gu.parseFile(f); for(int i=0; i<l.size(); i++) { System.out.println(l.get(i).getId()+" "+l.get(i).getUsername()+" "+l.get(i).getPwd()+" "+l.get(i).getDsp()); }
}
}class GetUser {
public List parseFile(File f) { List<User> user = new ArrayList<User>();
String s = null; BufferedReader bf = null;
try { bf = new BufferedReader(new FileReader(f));
while((s = bf.readLine())!=null) { String[] ss = s.split(" "); int id = Integer.parseInt(ss[0]); User u = new User(id,ss[1],ss[2],ss[3]); user.add(u); }
楼主【jacki6】截止到2008-07-23 23:34:22的历史汇总数据(不包括此帖):
发帖的总数量:0 发帖的总分数:0 每贴平均分数:0
回帖的总数量:0 得分贴总数量:0 回帖的得分率:0%
结贴的总数量:0 结贴的总分数:0
无满意结贴数:0 无满意结贴分:0
未结的帖子数:0 未结的总分数:0
结贴的百分比:---------------------结分的百分比:---------------------
无满意结贴率:---------------------无满意结分率:---------------------
如何结贴请参考这里:http://topic.csdn.net/u/20080501/09/ef7ba1b3-6466-49f6-9d92-36fe6d471dd1.html
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;public class Test {
public static final File f = new File("c:/user.txt");
public static void main(String[] args) {
if(!f.exists()) {
System.out.println("该文件不存在!");
System.exit(-1);
}
GetUser gu = new GetUser();
List<User> l = gu.parseFile(f);
for(int i=0; i<l.size(); i++) {
System.out.println(l.get(i).getId()+" "+l.get(i).getUsername()+" "+l.get(i).getPwd()+" "+l.get(i).getDsp());
}
}
}class GetUser {
public List parseFile(File f) {
List<User> user = new ArrayList<User>();
String s = null;
BufferedReader bf = null;
try {
bf = new BufferedReader(new FileReader(f));
while((s = bf.readLine())!=null) {
String[] ss = s.split(" ");
int id = Integer.parseInt(ss[0]);
User u = new User(id,ss[1],ss[2],ss[3]);
user.add(u);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return user;
}
}class User {
private int id;
private String username;
private String pwd;
private String dsp;
public User(int id, String username, String pwd, String dsp) {
super();
this.id = id;
this.username = username;
this.pwd = pwd;
this.dsp = dsp;
}
public String getDsp() {
return dsp;
}
public void setDsp(String dsp) {
this.dsp = dsp;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
}
1 test1 1234 测试
2 张三 5455 null
是用一个空格隔开的
oo思想。。啥也是对象,
可以再来个排序啥的。那就更意思。
比如按照姓名排序。
然后判断元素是不是为空。不为空再处理。
这样行不。
如果数据文件是用两个空格隔开数据的话,那么在String[] ss = s.split(" "); 中“”中就用两个空格
同理,如果是tab隔开的话,中“”中就用tab
结果是正确的
其实可以用一个静态量来约定一下是用什么分开数据的
而且更重要的一点,数据文件中的数据也是应该通过程序输入的,在输入的时候也需要输入分隔的符号,所以应该在两个之间约定一个一样的分隔符
如果数据文件是用两个空格隔开数据的话,那么在String[] ss = s.split(" "); 中“”中就用两个空格
同理,如果是tab隔开的话,中“”中就用tab
结果是正确的
其实可以用一个静态量来约定一下是用什么分开数据的
而且更重要的一点,数据文件中的数据也是应该通过程序输入的,在输入的时候也需要输入分隔的符号,所以应该在两个之间约定一个一样的分隔符
很详细
谢谢
我刚开始想用ObjectInputStream实现
但是老是出错
好像只能读特定字符的文件
当先执行写文件
然后再从文件中读出来就可以
不然老是出错