Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > C++ > C++ Class to do File Text Based Operations

Reply
Thread Tools

C++ Class to do File Text Based Operations

 
 
anand
Guest
Posts: n/a
 
      05-28-2005
Hi,

I am looking for a possible C++ File class that allows to do standard
"Perl Like" operations on structured data files in ASCII text.

For example:

1) Get the first and third fields from each line into a string obj
2) Get ALL "words" in a "line" of the file

etc...

Basically, anything you would be able to do from a Perl script, but
thru C++. I am looking to use it in my program and I know there are
better programmers than me out there, so I thought I will check first!

THanks in advance!
Anand


[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]

 
Reply With Quote
 
 
 
 
Ivan Vecerina
Guest
Posts: n/a
 
      05-28-2005
"anand" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed) oups.com...
> I am looking for a possible C++ File class that allows to do standard
> "Perl Like" operations on structured data files in ASCII text.
>
> For example:
>
> 1) Get the first and third fields from each line into a string obj
> 2) Get ALL "words" in a "line" of the file
>
> etc...
>
> Basically, anything you would be able to do from a Perl script, but
> thru C++. I am looking to use it in my program and I know there are
> better programmers than me out there, so I thought I will check first!


The two operations above can be written with a standard C++ istream.
But you may want to consider using a regular expressions library
for C++. Such as boost::regex http://www.boost.org/libs/regex/doc/.


Ivan

NB: it is often redundant to post to both clc++ and clc++.moderated.
If you're concerned by off-topic replies/threads, use the moderated group.
If you want a quicker answer, clc++ is usually best.
But posting to both NGs usually will delay the appearance of your
post and reply on clc++ as well.

--
http://ivan.vecerina.com/contact/?subject=NG_POST <- email contact form
Brainbench MVP for C++ <> http://www.brainbench.com


 
Reply With Quote
 
 
 
 
=?ISO-8859-15?Q?Juli=E1n?= Albo
Guest
Posts: n/a
 
      05-28-2005
anand wrote:

> Basically, anything you would be able to do from a Perl script, but
> thru C++.


That will be very difficult. You need to implement a C++ version of all
modules in CPAN, at least.

If you want to use all Perl machinery, the easiest way will be to embed perl
in your program.

--
Salu2


[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]

 
Reply With Quote
 
Jeff Flinn
Guest
Posts: n/a
 
      05-30-2005

"anand" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed) oups.com...
> Hi,
>
> I am looking for a possible C++ File class that allows to do standard
> "Perl Like" operations on structured data files in ASCII text.
>
> For example:
>
> 1) Get the first and third fields from each line into a string obj
> 2) Get ALL "words" in a "line" of the file
>
> etc...
>
> Basically, anything you would be able to do from a Perl script, but
> thru C++. I am looking to use it in my program and I know there are
> better programmers than me out there, so I thought I will check first!


Check out:

http://www.boost.org/libs/regex/doc/index.html

http://www.boost.org/libs/spirit/index.html

http://www.boost.org/doc/html/string_algo.html

http://www.boost.org/libs/filesystem/doc/index.htm

I'm totally unfamiliar with Perl, but the above libraries offer powerful C++
text and filesystem processing.

Jeff Flinn



[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]

 
Reply With Quote
 
Billy Patton
Guest
Posts: n/a
 
      06-01-2005
On Sat, 28 May 2005, anand wrote:

> Hi,
>
> I am looking for a possible C++ File class that allows to do standard
> "Perl Like" operations on structured data files in ASCII text.
>
> For example:
>
> 1) Get the first and third fields from each line into a string obj
> 2) Get ALL "words" in a "line" of the file
>
> etc...
>
> Basically, anything you would be able to do from a Perl script, but
> thru C++. I am looking to use it in my program and I know there are
> better programmers than me out there, so I thought I will check first!
>
> THanks in advance!
> Anand


Couple of functions I wrote do do just what you ask. Excep no regular
expressions. THere is a split and a sub. You could extend these to use pcre
lib and get the location of a regular expression. I just haven't carried it
that far YET

#include <string>
#include <sstream>
#include <locale>

bool StrSplit(const string in,char delim,vector<string>& out)
{
if (in.empty()) return false;
istringstream iss(in);
string token;
out.clear();
while(getline(iss, token, delim))
out.push_back(token);
return true;
}

bool StrSub(string& cp,string sub_this,string for_this,int num_times)
{
int i,loc;
if (cp.empty())
{
cp = sub_this;
return true;
}
if (for_this.empty()) return false;
for (i = 0; i NE num_times; i++)
{
loc = cp.find(for_this,0);
if (loc GE 0) cp.replace(loc,for_this.length(),sub_this);
else return true;
}
return true;
}

___ _ ____ ___ __ __
/ _ )(_) / /_ __ / _ \___ _/ /_/ /____ ___
/ _ / / / / // / / ___/ _ `/ __/ __/ _ \/ _ \
/____/_/_/_/\_, / /_/ \_,_/\__/\__/\___/_//_/
/___/
Texas Instruments ASIC Circuit Design Methodology Group
Dallas, Texas, 214-480-4455, http://www.velocityreviews.com/forums/(E-Mail Removed)

[ See http://www.gotw.ca/resources/clcm.htm for info about ]
[ comp.lang.c++.moderated. First time posters: Do this! ]

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
typesafe bitwise operations based on enums Daniel Gutson C++ 10 01-11-2008 02:52 PM
Re: typesafe bitwise operations based on enums Daniel Gutson C++ 3 01-10-2008 04:04 PM
stand-alone JMS, other JDBC operations, and transactions ( ActiveMQ + JOTM + JDBC operations ) Jesus M. Salvo Jr. Java 2 02-11-2006 06:33 PM
Nested Class, Member Class, Inner Class, Local Class, Anonymous Class E11 Java 1 10-12-2005 03:34 PM
Question: Writing text file based TestBenches vs. Waveform file based simulation. BLF VHDL 4 08-07-2004 12:44 AM



Advertisments