从文件Word中读取Word并确定新行C ++

时间:2014-10-13 02:25:20

标签: c++ string file newline

我有一个项目,我应该从文本文件中读取文字,并按字母顺序将它们存储在二叉搜索树中。我在单词中读到一个字符串,所以我猜你可以说我会逐字逐句。我不想通过char读取char,或者使用getline一次获取整行。我只是想逐字逐句地去。我应该能够存储每个单词出现的行,我不能弄清楚如何逐字阅读,并找出每个新行开始的位置。希望有人可以帮忙!

2 个答案:

答案 0 :(得分:0)

  

我不想通过char读取char,或者使用getline一次获取整行。

无论如何我可能会推荐......使用getline()!这使得您的算法的行编号更加简单,并且不会禁止您使用<<操作员一字一句地去。获得std::string后,您可以使用std::stringstream提取每个单词,在每次调用getline()时使用递增整数提前知道行号是什么。请记住在每次提取后检查流,以确保它有更多数据。

如果我有代表,我会评论。到目前为止你尝试了什么?

答案 1 :(得分:0)

读取一个单词会跳过前导空格,换行符被视为空格。你需要改变你的方法。

您可以编写自己的函数来跳过前导空格,并在阅读每个单词之前调用它。只需让它返回它找到的换行符的数量,这样就可以增加行号。