C++ :: Reading And Storing A Sentence From TXT File
Dec 11, 2012
I've created a class that is supposed to store first name, last name, date of birth, date of death, and a fact about a person (all variables within the class). Im trying to fill these variables with a read function. it reads a .txt file like this
Firstname Lastname 1987 1988 this guy did this
The problem is, I don't know how to handle the last variable. the variable needs to hold the entire "this guy did this" sentence. i made it a string, just because i was clueless, and as expected, it only holds "this"
this is my .h:
#include <string>
#include <fstream>
#include <iostream>
using namespace std;
class Person {
public:
Person();
Person(const Person & person);
[Code] ....
Here is the read function in the .cpp:
bool Person::Read(ifstream & input) {
return (input >> fname >> lname >> dob >> dod >> fact);
}
I thought maybe there was something in C that could read full sentences from stdin
Code: scanf("%100[^ ]s", string);
But that's not working for me. so i came up with my own function and its not giving me the results i want. here is the function including the call from main:
Code: /* * * * * * * * * * * * * * * FROM MAIN * * * * * * * * * * * * * * */ printf(" Adding a new part... "); printf("Enter part name: "); get_string(new_part.pname);
Where is the eight coming from? i thought fpurge clear the buffer. Also, I'm trying to add spaces in between words... i thought maybe putting within the while loop but outside of the if statement string[length +1] = '' would work, but it doesn't. so i put it outside of the loop but that i knew that wouldnt work either.
Problem #2 is reading from a file.. so far i have the following code which reads everything perfectly except the .txt file has a new line character at the end and i think its reading it:
0 in stock i want it to stop after reading the ball bearings line. a lot of issues for one post, but all related to reading inputs so i put it all on one.
And all of the above information is one person. As is "John,Peter,23" is first name, last name, age. When there are multiple people in a csv file how can i parse through and separate the information in a string and int for later use?
I know how to do this in c++ with fstream and std::string and getline and so on and so forth. Im writing my code solely in c however. I can't get g++ installed so figured it was a good excuse to learn c instead of using the equivalent c++ abstracts.
My problem is, I'm making a game in c that I have made in c++ but have ran into an issue with my map. I want to read in my map from a file which just looks like this: Name of Town * * * * * * * * * * * * * * * * * * * * * etc...
so i tried using fscanf to first read in the name of the town (stored in a char*) then read in the characters (in this case '*')(not including white spaces becuase i can just print those) into another char*. what is the better way to do this?
I would like to store the titles of a CD and then read them. I have started a program but not sure how to display or make sure it is storing it in the .txt file.
So i need the name of the course in one variable, the course code (ex 0360-141-01 for line 1) in another variable and the term (ie W2015 for line1). So i got the name done but cant figure out the course code since i need more than one value that is seperated by a comma. my code is:
#include<stdio.h> #include<string.h> typedef struct CourseInfo { int courseID;
I am trying to read and store a txt file with format below:
2.5;abc;2,4000 2.5;bef;3,2000 2.5;ref;3,1000
I try the fscanf( pFile, "%d;%s;%d,%d", buffer,buffer2,buffer3,buffer4 ); to store 2.5 to buffer, abc to buffer2, 2 to buffer 3 and 4000 to buffer 4 on first line.
However, it doesn't work. How can I achieve this? I want to read the 2nd line and so on.
Im tasked with reading a data file, this is an example snippet
list of trophy winners year facup leaguecup 1stdiv 2ndiv 1960/61 Tottenham Hotspur Aston Villa Tottenham Hotspur Ipswich Town 1961/62 Tottenham Hotspur Norwich City Ipswich Town Liverpool 1962/63 Manchester Utd Birmingham City Everton Stoke City
The file starts in 1892 and is up to 2011/12, there is data missing for some years due to the wars etc,
once ive read the file, i need to store the data, for me to re-use.
There are a lot of useful link regarding reading data in, but they tend to be with very small files with say 10 lines of numbers.
I've a text file : Random.txt which comprises of Jade 12MS234 Male 18 Rocky 12MS324 Male 18 Marx 12MS632 Male 18
Now in my program i've a class class stud { char name[10]; char reg[10]; char gender[10]; int age; };
Now I've to write a code in c++, where i've to read the given data and store this into 3 objects of stud class(array of objects) ...then further i've to manipulate the above stored data. I think i'm getting error while storing...variables are showing random characters... give me the code.for this program..in C++
I need to read input from a file , which contains multiple sentences of varying lengths. After each new line char, i need to store that sentence into an array.
I am trying to read a file use the data line by line to create into an object. The current file I have is like this and the code reading the file will be found below.
1223 Fake1 Name1 60 70 80 24 89 add1 Male 1224 Fake2 Name2 61 70 81 80 24 add2 Male 1225 Fake3 Name3 63 70 82 80 89 add3 Male 1226 Fake4 Name4 63 70 83 80 88 add4 Male
The problem I am having is that I need to put delimiters in the file so that a person can have more than one name and also the address can now hold multiple strings until the delimiter.
I would like to change my file to this;
1223 : Fake1 Name1 : 60 : 70 : 80 : 24 :89 : This will be address1 : Male 1224 : Fake2 Name2 : 61 : 70 : 81 : 80 :24 : This will be address2 : Male 1225 : Fake3 Name3 : 63 : 70 : 82 : 80 :89 : This will be address3 : Male 1226 : Fake4 Name4 : 63 : 70 : 83 : 80 :88 : This will be address4 : Male
How can I update the code below so that it can use the delimiters to create an object?
void loadFile(Person people[], int* i) { ifstream infile("people2.txt"); if ( !infile.is_open()) { // The file could not be opened cout << "Error";
So I'm trying to reformat a paragraph where the first letter of each sentence is capitalized and the rest are lower case. This is my function thus far. I'm trying to read for the end marks . ! and ? and have it so that once the are encountered the next word is capitalized. I used ispunct initially but it read for things like ,'s as well.
int PunctCount(string Text) //Counts the end marks. { int Total = 0; for (int i = 0; i < Text.length(); i++) if (Text == '.' || Text == '?' || Text == '!') Total++; return Total; }
Right now I get error: no match for âoperator==â in âText == '!'â
I am trying to write a program that ask the user to enter a sentence and then a word to be searched for in the sentence. The program must then search for the word in the sentence in a loop and continue to output each place the word is found. For example if the sentence is : I like pickles, pickles, pickles
and you searched for pickles it would return pickles found at 7, pickles found at 16, pickles found at 25.
I am having trouble writing the equation to make the find keep searching after each occurrence of the word being searched. Here is the code I have so far
HTML Code: #include <iostream> #include <string> using namespace std; int main() { string paragraph;
I am reading data from a text file into a program. I am well aware of the subtle distinctions in the mode of data input/entry when using the stream extraction operator, the get() function, and the getline() function.
My problem is that all of them do not read and/or store the newline character alongside the data read!
Any function that reads and stores data and the terminating newline character together??
So I'm working on that program that uses .txt files to store data, and I have one problem: I can't recover one full name from the .txt file
It's a school library program and it uses the <fstream> library for file operations, it stores theBookSignature >> theNameOfTheAuthor >> theBooksName.
I understand that C++ stops the input of a line when it stumbles upon a space, but isn't there something like a getline(cin, variableName) for file streams?
I am trying to store the Title, Artist, and date published of a list of CD's. I can't seem to be able to get it to print the list or not sure if it is actually storing it. This is what i have so far.
#include <iostream> #include <fstream> #include <cstdlib> #include <string> using namespace std; int main() { char names[5][100];
The problem that occurs is coming from the I/O I believe. I am creating a bank handling program and I am storing the accounts in a <map> and then I am storing the accounts in a text file. The problem I have is when ever I am closing the application and restarting it and want to read the text file I am getting nothing or I am getting really odd results. In the application it can be that it does not read anything or it could be that I get
Acc nbr: 0 Name: -47000300 Type: 12333993 balance: Å
But in my txt file its perfectly normal. Sometimes when Ive been trying to play around with the code the txt file changes the text to kanji signs. I've created an own implemented class that handles the account for example, deposition, overloading constructor of creating an account, withdraw, returning various information. The attributes are all public.the read file function:
void read_file(){ string name; int pnbr; int accNbr; int balance;
I'm having trouble reading my data from a .txt file into a structure of the format shown in my code. I've made my student database in the program below based on user input and I didn't have a problem with that, but now it's come to input from a file it's making it difficult.
My three tasks are:
(1) A table containing 1 row per student, containing the student ID number and all of the student's marks.
(2) Another table, containing 1 row per student, containing the student ID number and the average mark obtained by that student.
(3) The average mark for each subject.
The assumptions to be made are: The student ID can begin with a zero, and should therefore be read in as a string.The test data will contain 20 students but the program should be able to deal with up to 100 students.Assume there are no more than 4 different subjects.
So based on the first assumption I've arranged the data in the file in an order in which the student ID begins with a zero:
...for twenty students, 80 lines of data. Now, on the assumption they must be read in as strings, this is what's making it tricky to store in the structure because, I've got 80 ID numbers but 20 repeat themselves 4 times. Once I've got this data in the structure below the tasks I won't have a problem with because I can just base it on a user input program but the data's already stored instead.
Below is my code for user input associated with task (1). In this example the IDs are stored as ints but for the file they will be strings. It compiles fine, displays the data as shown in the assignment sheet, but I don't know how to get the data into my structure. I can store the data in a structure of three arrays using fscanf() no problem, but it's not very "workable" for what I need to do with it.
struct Wine { string wineName; int vintage; int rating; double price; };
how can i store the file data below in an array with the structure type???
Dow Vintage Port ;2011;99;82 Mollydooker Shiraz Carnival of Love ;2012;95;75 Prats & Symington Douro Chryseia ;2011;97;55 Quinta do Vale Meão Douro ;2011;97;76 Leeuwin Chardonnay River Art Series ;2011;96;89