如何在C ++中输入任意数量的文本文件?

时间:2017-06-07 18:25:25

标签: c++

所以我正在为一个类编写一个编码项目,我理解我想要完成的基本事情,但是似乎没有人可以帮助我的一件事是输入一个未指定数量的文本文件。提示用户输入他们想要比较的文本文件(我的代码的总体目的),用空格分隔,从而允许他们比较任意数量的文本文件(例如,2,3,8,16等)。我知道getline函数在这里很有用,并且可以搜索"的数量。"因为文件只能包含一个"。",所有这些都在for循环中。在那种逻辑之后,我完全迷失了。最后,我将不得不打开文本文件并将它们放入集合中以将它们与其他文件进行一次比较,并将它们的相似性和差异输出到另一个文本文件中。有什么想法吗?

2 个答案:

答案 0 :(得分:0)

以下是我将尝试遵循的一般过程(如果我正确解释了提示)

  • 使用getline获取文本文件行
  • 将其放入字符串流
  • 打开流中的下一个文件,同时字符串流中仍有信息(不是eof)
  • 将所有这些信息存储在字符串向量中,每个新文件在读取后都附加在其上
  • 比较向量中的字符串

答案 1 :(得分:0)

如果您在命令行上传递文本文件而不是通过stdin生活中的用户通过一个小对话框获取它们将会更容易。大多数用户都会输入

        <!-- obtain ${*:*:jar} properties -->
        <plugin>
            <artifactId>maven-dependency-plugin</artifactId>
            <executions>
                <execution>
                    <id>getClasspathFilenames</id>
                    <goals>
                        <goal>properties</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
                <argLine>-javaagent:${org.jmockit:jmockit:jar}</argLine>
            </configuration>
        </plugin>

在Unix类型系统上将其扩展为文件列表。在DOS上你需要自己匹配和扩展外卡。

你有一个N平方问题,但逻辑很简单,只是

compare *