Cara merentas platform untuk mendapatkan nombor baris fail INI yang pilihan yang diberikan ditemui
Banyak aplikasi hari ini menggunakan fail .ini untuk disimpan data konfigurasi. Fail ini ringkas dan mudah dihuraikan. Walau bagaimanapun, mencari nombor baris entri tertentu boleh menjadi sukar tanpa bantuan perpustakaan.
Boost.Program_options ialah perpustakaan C yang menyediakan cara mudah untuk menghuraikan dan menyimpan perintah- pilihan baris. Ia juga mempunyai sokongan untuk menghuraikan fail konfigurasi .ini.
Untuk menggunakan Boost.Program_options untuk mencari nombor baris entri .ini, anda boleh menggunakan langkah berikut:
Jika mana-mana nilai dalam objek variables_map adalah tidak sah, fungsi notify() akan membuang pengecualian. Pengecualian ini akan mengandungi nombor baris bagi nilai yang tidak sah.
Berikut ialah contoh cara menggunakan Boost.Program_options untuk mencari nombor baris entri .ini:
<code class="cpp">#include <boost/program_options.hpp> #include <iostream> int main(int argc, char** argv) { try { // Create an options description object. boost::program_options::options_description options; options.add_options() ("my-option", boost::program_options::value<std::string>(), "My option"); // Create a variables map object. boost::program_options::variables_map vm; // Parse the INI file. boost::program_options::store(boost::program_options::parse_config_file<char>("my.ini", options), vm); // Validate the values. boost::program_options::notify(vm); // Find the line number of the "my-option" option. if (vm.count("my-option")) { std::cout << "The line number of the \"my-option\" option is: " << vm["my-option"].source() << std::endl; } else { std::cout << "The \"my-option\" option was not found." << std::endl; } } catch (std::exception& e) { std::cerr << "Error: " << e.what() << std::endl; return 1; } return 0; }</code>
Ini kod akan menghuraikan fail my.ini dan menyimpan nilai dalam objek variables_map. Ia kemudiannya akan mengesahkan nilai dan mencari nombor baris pilihan "my-option". Jika pilihan tidak ditemui, kod akan mencetak mesej ralat.
Atas ialah kandungan terperinci Bagaimanakah saya boleh menggunakan Boost.Program_options untuk mencari nombor baris entri tertentu dalam fail INI?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!