用Java,比如有购物清单文件shopping.txt。 (以下内容为示例,大家作业内容随意) 卖家:天猫tmall。芒果198元,蓝莓78元,大枣160元。 卖家:京东jd。笔记本3500元,硬盘1480元。 卖家:得到app。吴军299元,熊逸199元,严伯钧199元。 卖家:抖音。勿忘我19.9 海鲜大礼包99元。 要求按行读取购物单,并在该行的后面加上消费总额,然后将该行写到一个名字为buyingList.txt的文件中。 卖家:天猫tmall。芒果198元,蓝莓78元,大枣160元。消费总额:436.0元。 卖家:京东jd。笔记本3500元,硬盘1480元。消费总额:4980.0元。 卖家:得到app。吴军299元,熊逸199元,严伯钧199元。消费总额:697.0元。 卖家:抖音。勿忘我19.9 海鲜大礼包99元。消费总额:118.9元。
时间: 2023-09-18 12:15:55 浏览: 88
shopping.zip
好的,这是一个文件读写的问题。你需要使用Java中的文件读写操作来实现这个功能。
首先,你需要创建一个输入流对象来读取购物清单文件。然后,你可以使用Java中的BufferedReader类来逐行读取文件内容。读取每一行的同时,你需要解析出该行的商品清单和消费总额。最后,你需要将该行内容写入到一个名为buyingList.txt的文件中。
以下是示例代码,你可以根据需要进行修改和优化:
```java
import java.io.*;
public class ShoppingList {
public static void main(String[] args) throws IOException {
// 创建输入流对象
FileInputStream fis = new FileInputStream("shopping.txt");
BufferedReader br = new BufferedReader(new InputStreamReader(fis));
// 创建输出流对象
FileOutputStream fos = new FileOutputStream("buyingList.txt");
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(fos));
// 逐行读取文件内容
String line;
while ((line = br.readLine()) != null) {
// 解析出商品清单和消费总额
String[] items = line.split("。");
String[] itemList = items[1].split(",");
double total = 0.0;
for (String item : itemList) {
total += Double.parseDouble(item.split("元")[0]);
}
String result = line + "消费总额:" + total + "元。";
// 将该行内容写入到buyingList.txt文件中
bw.write(result);
bw.newLine();
}
// 关闭输入输出流
br.close();
bw.close();
}
}
```
这个程序将读取shopping.txt文件中的内容,并按行写入到buyingList.txt文件中,每一行后面加上了消费总额。你可以将上述代码保存为ShoppingList.java文件并编译运行。
阅读全文