Cool_Coder
Cool_Coder

Reputation: 5083

Issue reading a file

i am creating a program to read the .dxf file of autodesk. i am encountering a problem while reading strings.

when i use :

string acad;
fstream f;
f.open(name);
f >> acad

if the string is "chamfer" it works perfect. but if the string is "a & b" it is able to read only upto a. since the file format follows a pattern i am using while loop.

example from a file:

  9           //loop 1
$DWGCODEPAGE  //loop 1
  3           //looop 1
ANSI_1252     //looop 1
  9           //loop 2
$LASTSAVEDBY  //loop 2
  1           //loop 2
sam & tom     //loop 2
9             //loop 3 
$INSBASE      //loop 3
 10           //loop 3
0.0           //loop 3

as you can see sometimes there may not be any space as in "ANSI_1252" & sometimes there may be spaces as in "sam & tom". how can i generalise the code so that the whole string in a line is stored along with the spaces, if any. please forget about the spaces in the beginning of each line, i am using ws for that. thank you!

Upvotes: 0

Views: 68

Answers (1)

Hakan Serce
Hakan Serce

Reputation: 11256

>> operator reads words delimited by space, when used with a string parameter. If you want to read lines of characters, you should use getline() instead.

Upvotes: 1

Related Questions