C ++比较两个文本文件的上下文

时间:2017-05-14 15:38:10

标签: c++

我想阅读order.txt的订单,这是;

Chocolate Chip Cookies  1   2 
Orange Jelly Candy      2   7
Chocolate ice cream     3   11
Cake Mix Cookies        1   10

并确定stock.txt中是否有足够的产品;

Name    Type    ItemCount       Price
Chocolate Chip Cookies  1       4       600
Orange Jelly Candy      2       5       150
Cake Mix Cookies        1       12      180
Peanut Butter Chocolate Chip Cookies    1   3   120
Chocolate ice cream     3       2       240
Gummi bears     2       15      300
Raspberry Ripple        3       12      250

这样的对齐方式。最好的方法是什么?有没有什么可以从文件中读取,我可以用产品名称/数量/价格的方式存储?

谢谢。

2 个答案:

答案 0 :(得分:0)

我不明白第二和第三列的含义,我假设其中一个是订单大小。

有很多方法可以做到这一点,我的方法在所有情况下可能都不是最好的,但至少它应该在你的方法中起作用:

  1. 阅读stock.txt文件,您可以查看此example,但使用哪种方法并不重要。重要的是将信息作为变量存入程序。希望您的文本文件使用选项卡来分隔字段(此信息在问题中丢失)。
  2. 将您收到的信息放入std::map,将其称为orders,将名称设为key,将ItemCount作为值。
  3. 现在阅读order.txt中的信息,使用keyvalue中查找orders
  4. 检查ItemCount是否至少与订单大小一样大。

答案 1 :(得分:-1)

在实际应用程序中,您将使用数据库存储库存数据,并编写一个类订单,从数据库中获取其值。但是,我不认为你想要那么多的努力,所以这里有一个更方便的方式: 您的库存数据保存在一个简单的Excel表中,订单是一个文本文件 将Order.txt:

Beer 1|Paint 5|Oil 3|.....

使用|作为标记来创建订单中各个产品的子字符串 BSP。 ProductName数量id | ProductName2数量id2 | ....

至于excel表,你必须自己做一点研究,但用文件阅读器编辑文件并不是那么难。

希望我能帮忙