Boost logo

Boost Users :

Subject: Re: [Boost-users] Reading & Parsing an .ini input file using BOOST... ..!!
From: Rahul Mathur (srivmuk_at_[hidden])
Date: 2013-10-22 21:01:03


Let me tell you, w/o knowing characteristics about .ini file I manually
created a input.ini file like an oridinary .txt or .log file and thought to
try if it can be parsed entirely like normal file. Let me know, if I can
manually write in .ini file as one of my READ file where I try READING
entire LINE until end rather in "key, value" of .ini format.

Also, what could be the best and fastest way to large (~ 5KB) files on
Linux with GNU compilers and Boost-v1.54. Is memory-mapped files the
fastest way or iostream or boost.spirit?

On Wed, Oct 23, 2013 at 6:12 AM, Edward Diener <eldiener_at_[hidden]>wrote:

> On 10/22/2013 7:52 PM, Rahul Mathur wrote:
>
>> All,
>>
>>
>> Need small help. I have an "input.ini" input file which contains sample
>> values like –
>>
>>
>> ---
>>
>> App=| 5000 | 5001 | 0 | | | | 1BYTE |
>>
>> ---
>>
>>
>> Starting with word (viz. App), followed by equal sign, than data within
>> pipes (|) and blank space between two pipes ( | | ). Anything only
>> between
>> two pipes is to be read.
>>
>>
>>
>> I am looking to parse this input file. After parsing, assign each data to
>> struct member type and than send this complete struct as socket.
>>
>>
>>
>> I am looking to use Boost property tree (or the needed one) and finally
>> the
>> ASIO to send the complete filled struct as stream.
>>
>> I tried below code to read complete data and it worked but -
>>
>> ---
>> #include <iostream>
>> #include <boost/property_tree/ptree.**hpp>
>> #include <boost/property_tree/ini_**parser.hpp>
>> #include <boost/filesystem/fstream.hpp>
>>
>> int main()
>> {
>>
>> boost::property_tree::ptree pt;
>> boost::property_tree::ini_**parser::read_ini("input.ini", pt);
>> std::cout << pt.get<std::string>("App") << std::endl;
>> }
>> ---
>>
>> But, how to read between pipes?
>>
>
> Look at Boost tokenizer library. Or use standard regex or Boost regex
> depending on what your compiler supports.
>
>
> ______________________________**_________________
> Boost-users mailing list
> Boost-users_at_[hidden]
> http://lists.boost.org/**mailman/listinfo.cgi/boost-**users>
>



Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net