-3

有一个文件包含如下数据:

11619.
Jody rosy.
32.
north st.
1/8/2013.
52.

我想阅读整个文件内容如下:

1
1
6
1
9
.

J
o
d
y

etc.

我怎样才能以这种方式读取文件内容?

4

5 回答 5

2

迭代器就是为此而生的——具体来说,std::istream_iterator<char>.它比使用get()or有用得多read()

于 2013-08-03T16:26:08.063 回答
2

我会这样做:

std::ifstream infile("myfile.txt");
char ch;
while(infile.get(ch))
{
   ... process ch ... 
}

这避免了出现在最后一个字符上的问题,或者必须在循环的第一次迭代之前读取一个字符。

于 2013-08-03T16:10:04.843 回答
2

Use std::ifstream:

std::ifstream fs("file.ext");
int ch = fs.get();

while (fs.good()) {
    // process `ch' then
    ch = fs.get();
}
于 2013-08-03T15:40:35.873 回答
0

尝试这个:

  char c;
  file >> c;

或者

  char c;
  file.read((unsigned char *) &c, sizeof(c));
于 2013-08-03T15:38:41.600 回答
0
#include <fstream>

int main()
{
    std::ifstream input("file.txt");
    while (input)
    {
        char character;
        input.get(character);
        // Process character.
    }
    return 0;
}
于 2013-08-03T15:43:22.900 回答