找到文本文件中的最后一行并选择前10个字符并打印到新文件?

时间:2013-08-12 13:44:53

标签: c++

我需要找到文本文件的最后一行并选择前10个字符并将10个字符打印到新的文本文件中。

我可以打开一个文件,读取数据并将其写入新文件,但我找不到最后一行,选择10个字符并将该值打印到新文件中。

请帮帮我。

#include <stdio.h> 
#include <conio.h> 
#include <iostream.h> 
#include <fstream.h> 
#include <string.h> 

int main() { 
    unsigned int number_of_lines = 0; 
    FILE *infile = fopen("D:\\example.txt", "r"); 
    int ch; 

    while (EOF != (ch=getc(infile)))
        if ('\n' == ch)
            ++number_of_lines; 

    int linescount = number_of_lines+1; 
    cout << linescount << endl;

    system("pause"); 
    return 0; 
}

1 个答案:

答案 0 :(得分:6)

ifstream file;
string filename="D:\\example.txt";
file.open(filename.c_str());

string line;
while(getline(file,line));

现在您在字符串line

中有最后一行

现在将line的10个字符发送到输出文件。 line.substr(0,10)将获取前十个字符。