java 文件存贮和读取的问题

importjava.io.*;importjava.util.*;publicclassShoppingList{publicstaticvoidmain(String... import java.io.*;
import java.util.*;
public class ShoppingList {
public static void main(String[] args) throws FileNotFoundException{
String[] x = new String[3];
Scanner stdin = new Scanner(System.in);;

for(int i=0;i<x.length; i++){
System.out.println("Please enter item " + i + ":");
x[i] = stdin.nextLine();
}
WriteToFile(x);
ReadFile();
}

public static void WriteToFile(String[] x) throws FileNotFoundException{
FileOutputStream o = new FileOutputStream("list1.txt" );
PrintStream p =new PrintStream(o);

for(int i=0; i<x.length; i++){
p.println(x[i]);
}
}

public static void ReadFile() throws FileNotFoundException{
File f = new File("list1.txt");
Scanner fout = new Scanner(f);

while(fout.hasNextLine()){
System.out.println(fout.nextLine());
}
}

}
这是一个简单的文件存入再读出的例子,我想做的是每次存入的不仅一项事物,比如像这样
apple 3 red
banana 4 yellow
cup 5 white
......
然后有一个单独的类每次会在程序运行的时候先把这个txt里的内容自动存到三个数组里,比如说apple,banana,cup是一个数组;3,4,5是一个数组;red,yellow,white是一个数组。然后主程序里可以存进新的数据,和读取所有的数据。
然后我就不知道应该怎么写那个单独的每次运行程序都把已经存在的数据分别存入不同的类的类,三个不同的数据用什么来判断存入和读取呢??
多谢大侠帮忙!!
不好意思,我只有10分了,只能给大家提供10分了.
展开
 我来答
4kyou
2009-11-19 · 超过16用户采纳过TA的回答
知道答主
回答量:41
采纳率:0%
帮助的人:41万
展开全部
用String类的spilt()方法,
比如String a = "aaaa bbbbb cccc sdfg dfkl";(中间可以有一个或N个空格)
String s[] = a.split("\\s+");
这样就把你的apple 3 red 分开了撒,存的话用ArrayList吧,因为你也不知道到底要存多少东西...
希望对你有帮助
dongrenfei21
2009-11-16 · TA获得超过2926个赞
知道小有建树答主
回答量:1264
采纳率:0%
帮助的人:1211万
展开全部
这里给楼主提供一种思路(仅供参考)
每次读一行的时候,找到两个空格的位置,然后把一行拆分成3个字符串,分别存入数组。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
渡轮555
2009-11-16 · TA获得超过534个赞
知道小有建树答主
回答量:863
采纳率:100%
帮助的人:654万
展开全部
如果按顺序存的话不就能按顺序取了?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我的酒窝儿
2009-11-17 · TA获得超过335个赞
知道小有建树答主
回答量:747
采纳率:0%
帮助的人:153万
展开全部
创建一个类有 三个字段 name value attribute 然后创建 三个数组分别压三种值 让他们的 字段对齐
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式