Как найти номер строки и номер позиции в строке в текстовом файле?
Мне нужно найти номер строки и номер позиции в строке заданого символа в текстовом файле. Я сделал, но мне нужно считать символ не с начала, а с конца. Посмотрите мой код (ищу первую . в файле):
#include <iostream>
#include <iomanip>
#include <stdio.h>
#include <fstream>
#include <string>
using namespace std;
int Search_position(int& i)
{
ifstream fin("t.txt"); // название файла
char line;
int k = 0;
while ((line = fin.get()) > 0)
{
if (line == '.')
{
k++;
if (k == 1)
{
return i;
}
}
if (line != '\n')
i++;
}
cout << "No";
return 0;
}
int Search_line(int& n, int& i)
{
char line;
int l = 0;
ifstream fin("t.txt");
while ((line = fin.get()) > 0)
{
if (line != '\n')
l++;
if (l >= i && line == '\n')
n++, l++;
}
return n;
}
int main()
{
setlocale(LC_ALL, "rus");
ifstream fin("t.txt");
char line[150];
while (!fin.eof())
{
fin.getline(line, sizeof(line));
cout << line << endl;
}
int i = 1;
int n = 1;
cout << "\nПозиция символа : " << Search_position(i) << endl;
cout << "\nСтрока : " << Search_line(n, i) << endl;
return 0;
}
Text file:
One One
....
Two
Three
Four
..