所以我有以下用于数组的读写文件程序。下面的 ArrayList 会是什么样子?我在语法上有问题。我知道 ArrayList 会是这样的: private ArrayList prod list = new ArrayList(); 但是读/写 IO 语法会如何?谢谢你。
static ActionProduct[] prodlist = new ActionProduct[50];
static String filename = System.getProperty("user.dir") + "\\src\\product.txt";
static int pIndex=0;
public static void readFile() throws IOException {
// input file must be supplied in the first argument
InputStream istream;
if (filename.length() > 0) {
File inputFile = new File(filename);
istream = new FileInputStream(inputFile);
} else {
// if no filename, use standard input stream
istream = System.in;
}
// use a buffered reader for line-at-a-time
// reading
BufferedReader lineReader;
lineReader = new BufferedReader(new InputStreamReader(istream));
// read one line at a time
String line;
while ((line = lineReader.readLine()) != null) {
StringTokenizer tokens = new StringTokenizer(line, "\t");
// String tmp = tokens.nextToken();
// System.out.println("token " + tmp);
prodlist[pIndex] = new ActionProduct();
String category = prodlist[pIndex].getCategory();
category = tokens.nextToken();
System.out.println("got category " +category);
int item = prodlist[pIndex].getItem();
item = Integer.parseInt(tokens.nextToken());
String name = prodlist[pIndex].getName();
System.out.println("got name " +name);
double price = prodlist[pIndex].getPrice();
price = Double.parseDouble(tokens.nextToken());
int units = prodlist[pIndex].getUnits();
units = Integer.parseInt(tokens.nextToken());
pIndex++;
}
}