java 文件存贮和读取的问题

来源:百度知道 编辑:UC知道 时间:2024/06/21 01:51:00
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());<

用String类的spilt()方法,
比如String a = "aaaa bbbbb cccc sdfg dfkl";(中间可以有一个或N个空格)
String s[] = a.split("\\s+");
这样就把你的apple 3 red 分开了撒,存的话用ArrayList吧,因为你也不知道到底要存多少东西...
希望对你有帮助

这里给楼主提供一种思路(仅供参考)
每次读一行的时候,找到两个空格的位置,然后把一行拆分成3个字符串,分别存入数组。

如果按顺序存的话不就能按顺序取了?

创建一个类有 三个字段 name value attribute 然后创建 三个数组分别压三种值 让他们的 字段对齐