Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Mengakses Terus Baris Tertentu dalam Fail Teks Menggunakan C?

Bagaimana untuk Mengakses Terus Baris Tertentu dalam Fail Teks Menggunakan C?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-06 07:13:02622semak imbas

How to Directly Access a Specific Line in a Text File Using C  ?

Menavigasi Fail Teks dalam C : Melompat ke Garis Tertentu

Membuka fail teks dengan fstream menyediakan akses kepada kandungan fail. Walau bagaimanapun, kadangkala anda perlu melangkau atau mengakses baris tertentu dalam fail.

Menavigasi ke Talian Tertentu

Untuk pergi ke baris tertentu, seperti baris 8, kaedah mudah ialah menggunakan pendekatan berasaskan gelung:

<code class="cpp">#include <fstream>
#include <limits>

std::fstream& GotoLine(std::fstream& file, unsigned int num) {
    file.seekg(std::ios::beg);
    for (int i = 0; i < num - 1; ++i) {
        file.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
    }
    return file;
}</code>

Fungsi ini mengambil aliran fail dan nombor baris sebagai parameter. Ia menetapkan penuding carian fail ke permulaan baris yang ditentukan.

Memahami Kod

  1. file.seekg(std::ios:: beg);: Menetapkan penuding carian ke permulaan fail.
  2. untuk (int i = 0; i < num - 1; i){: Gelung melalui setiap baris sehingga nombor baris yang dikehendaki.
  3. file.ignore(std::numeric_limits::max(), 'n');: Menggunakan dan membuang aksara sehingga baris baharu ditemui atau strim tamat.
  4. Selepas melengkapkan gelung, penuding cari diletakkan pada permulaan baris yang ditentukan.

Contoh Penggunaan

Untuk menguji pendekatan ini, pertimbangkan fail teks dengan kandungan berikut:

1
2
3
4
5
6
7
8
9
10

Atur cara berikut menunjukkan cara untuk pergi ke baris 8:

<code class="cpp">int main() {
    using namespace std;
    fstream file("bla.txt");

    GotoLine(file, 8);

    string line8;
    file >> line8;

    cout << line8;  // Output: 8
    cin.get();
    return 0;
}</code>

Dengan menggunakan kaedah ini, anda boleh menavigasi ke baris tertentu dengan mudah dalam fail teks. Pendekatan ini amat berguna apabila berurusan dengan fail besar atau apabila maklumat khusus perlu diakses tanpa menghuraikan keseluruhan fail.

Atas ialah kandungan terperinci Bagaimana untuk Mengakses Terus Baris Tertentu dalam Fail Teks Menggunakan C?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn