对于这个问题,您应该使用 C++ 字符串对象或 C-String。从文件中读取内容。文件格式是这样的,在每一行中:1) 有三列,2) 每列由 | 分隔。将每一行输出到标准输出。第一列宽应为 15,第二列宽应为 8,第三列宽应为 6。如果行以 # 开头,则应跳过它。此外,第二列应显示到小数点后两位。可能超过 3 行;你不能假设只有 3 行。但是,您可以假设只有 3 列。样本输入
#Test file one
C1|c2|c4
Xyz|1.2|100
Abc|5.5|200
因此,鉴于该程序大纲(我不是要求您编写我的代码!:()这是我对要做什么的想法...多维数组,但可以有超过三行,所以我不使用那个变量不认为我可以因此做一个多维数组。
我还考虑过阅读每一行,将其分开,格式化然后打印出来,一次只担心每一行。我认为这是最好的方法,但我愿意通过建议做任何事情。我想我会通过使用某种行尾“分隔符”来做到这一点。
我能找到的唯一另一个问题是,如果前导字符是#,我应该忽略并跳过行。我也不知道该怎么做,我认为 ignore() 函数是一种方法,但据我所知,它开始跳过一些事情,直到达到你的限制或找到分隔符。我认为没有办法使用该功能首先找到 delim 字符,然后将所有内容都跳过到 EOL。