这就是我阅读文件的方式,如果我有一个比小杂货清单更大的清单,这种阅读文件的方式仍然是打开文件并从中获取信息的最有效方式吗?可以说我没有购物清单但可能是Excel文件?需要做些什么改变?
此购物清单可以如下(其.txt文件)
Item Price Quantity
Apple 2.99 2
Orange 1.99 1
Juice 4.99 3
Chicken 9.99 1
Milk 2.99 1
代码:
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class ReadingFiles{
public static void main(String[] args) throws FileNotFoundException {
Scanner g = new Scanner(new File("groceries.txt"));
double sum = 0;
g.nextLine();
while (g.hasNext())
{
String a = g.nextLine();
String [] c = a.split(" ");
String item = c[0];
double price = Double.parseDouble(c[1]);
int q = Integer.parseInt(c[2]);
if(!item.equals("Chicken"))
{
sum = sum +(price*q);
}
}
System.out.println("The total is: "+sum);
}
}
答案 0 :(得分:2)
如果它是纯文本文件,我相信你正在正确阅读它。但是如果你有一个excel要使用Apache POI,它提供了某些易于使用的API。以下是相同的参考网址:
http://viralpatel.net/blogs/java-read-write-excel-file-apache-poi/
如果您有权控制或决定可以使用哪个文件存储杂货数据,那么csv也是一个不错的选择。这是另一个帮助您阅读csv的链接:
http://viralpatel.net/blogs/java-read-write-csv-file/
明智地选择,希望它有所帮助!
答案 1 :(得分:1)
如果您需要阅读的文件是Excel文件,您可能希望使用现有的一个API来读取Java文件。最着名的选择是:
读取我最近使用的结构化文本文件的好方法是jsapar,它允许您将文件直接解析为Java列表。我并没有声称它比原始阅读更快,但它仍然非常有用。