C :: Storing A Value In Array From Reading In From A File
Sep 12, 2013Is something like this possible and if not how can I make this work?
fscanf(in, "%d %d %d", &i, &x, &arr[i+x]);
Is something like this possible and if not how can I make this work?
fscanf(in, "%d %d %d", &i, &x, &arr[i+x]);
My main issue is that when I store just one value into a simple integer variable, it gives me a big negative number.
My goal is to store a file that reads like this into arrays:
2014 1 23
2012 2 15
2013 1 25
etc
Where I would have the first column in an array, the second in another and the third in third array since I am not allowed to use multidimensional.
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.
#include <iostream>
#include <cstring>
#include <fstream>
#include <cstdlib>
[Code].....
I'm trying to read in lines for a file and storing it in an array. This is what I have so far. Am I allocating the memory correctly?
Code:
typedef struct {
/* declartion of variables */
} App
typedef struct {
[Code].....
How do I access the array content? I'm suppose to strtok the contents from the lines stored in the array and use it again.
I am working on a small c++ project where i read from a csv file with information in this format:
string,string,int
string,string,int
string,string,int
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.
#include <iostream>
#include <fstream>
#include <cstdlib>
[Code]....
how to read a csv file where the data is seperated with commas so the csv file looks like:
programming,03,60,141,01,W,2015
programming,03,60,141,30,W,2015
Algebra,03,62,102,02,S,2013
Religion,08,98,938,20,F,2014
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;
[Code].....
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 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.
Code:
char buffer[100]="";
char buffer2[100]="";
char buffer3[100]="";
char buffer4[100]="";
FILE * pFile=NULL;
pFile = fopen("C: est est.txt", "r");
[Code] ....
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 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";
[Code] .....
So I'm reading a file line by line and storing it backwards into a list. So if the file has has this format...
1
2
3
4
The code should store each line in a list as such...
4, 3, 2 ,1
Instead the code will store the last variable in all nodes. So the final list will look like this...
4, 4, 4, 4
Here is my code...
struct node *head = NULL;
int i;
while(read(in, &i, sizeof(int)) != 0) {
struct node *temp = malloc(sizeof(*temp));
temp->line = &i;
temp->next = head;
head = temp;
}
I have a structure
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
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??
I am doing SerialPort communication program where i am opening the port and reading data from port and storing in one document.
I debug my program and check that my read function is reading the data properly but when checking the document i find only unicode.
Suppose I am sending 1,2,3,4 to port i able to read same but my document showes þÿÿ þÿÿ þÿÿ þÿÿ
//My Read Function which read data from serial port
tInt serialport::Read(tVoid* pvBuffer, tInt nBufferSize) {
tInt nBytesRead = 0;
[Code] ....
Why I am getting unicode instead of 1,2,3,4 in my document ....
I know to read a strings into array and tables.. what is they are mixed up?? strings are just names ( 3 characters) and there are bunch of table.. the max size was set to 60
ex. text file
JES
DAN
JEN
.
.
.
01010101
10010101
RAM
JET
01010010
10100101
.... and so on
should i use a while loop?
i've been trying to write array into file and read them into the same program again, but the output is all wrong.
Code:
#include<stdio.h>
int main()
{
FILE *fp;
char name[3][7];
int x;
}
[code]....
This is what I am supposed to be doing with this problem: Read the integer values in the file "numbers.dat" and display
* them in reverse order (that is, display the last number in the
* file first, the second-to-last second and so on). Use an array to
* store the values. It is safe to assume that the file contains no
* more than 100 values.
I have gotten far enough to read the file and display as an array, but it is displaying vertically rather than horizontally. So it is displaying 10 and a 1 on the first line then the 0 on the second line. Before I can work the reverse part out, I need it to display each number as 10 line 1 -235 line 2 so on and so forth.
This is my code so far:
void display_array_reversed() {
ifstream fin ("numbers.dat");
if (!fin){
cerr << "Error opening file" << endl;
exit(1);
[Code] .....
So if I have a file that has a list of scores and the name of the student, how am I going to read the scores and names, and print to output? For example, the text file will look like:
83 75 89 90 75 67 John Doe
67 92 78 64 88 95 Jane Waters
76 65 87 70 97 76 Billy Bob
And they'll be printed like that too.
I made a 2D array for the scores and names, and was able to scan the scores into the scoreArray, but I am stuck for the names. Do I use fscanf, fgets, etc? And how do I use these for a char array?
insert Code:
int main {
int scoreArray[NUM_ROW][NUM_COLUMN];
char nameArray[NUM_ROW][SIZE];
...........opened file, etc.
[ for (row=0; row<2; row++)
{ if(row>0)
{printf("
[Code] ....
When I run this, I get the scores and names (somewhat) in a jumbled mess.....
My assignment is to read in from a .txt file two things: an integer and a string. After reading in these 2 items I have to put them into a 10x10 2D array so that both the number and the character can be manipulated by the user. Here are the contents of the text file:
Dr. J's Garden
0.21,B, 2.80,G, 4.96,B, 2.66,B, 4.48,B, 0.61,T, 0.40,B, 3.50,G, 3.63,B, 3.91,T,
2.33,T, 4.51,G, 1.15,G, 4.95,T, 2.76,T, 4.51,T, 2.54,G, 4.04,T, 2.38,B, 0.62,B,
4.54,G, 3.38,T, 1.57,T, 3.92,T, 3.03,B, 4.72,G, 0.23,B, 4.02,G, 4.69,G, 0.66,G,
1.34,T, 2.21,G, 2.48,G, 4.85,T, 3.25,G, 3.55,G, 4.78,B, 0.81,G, 0.74,G, 2.55,G,
3.35,G, 4.52,G, 4.81,G, 2.67,G, 4.97,B, 0.87,G, 1.28,G, 4.58,B, 1.91,B, 3.69,B,
3.02,T, 3.15,T, 1.08,T, 4.68,G, 1.10,B, 3.17,G, 1.97,T, 0.99,G, 4.50,T, 3.87,T,
3.36,G, 1.60,T, 3.73,G, 2.14,B, 3.68,B, 2.44,G, 3.10,G, 4.54,B, 0.25,B, 0.25,G,
1.79,B, 3.02,G, 2.21,T, 0.22,G, 3.67,B, 4.46,G, 2.14,G, 2.31,G, 0.80,T, 3.83,B,
1.56,B, 1.41,T, 0.80,G, 1.27,T, 0.08,B, 1.20,G, 2.88,B, 2.78,T, 3.30,B, 1.75,B,
2.60,G, 4.72,T, 4.55,T, 0.89,B, 0.52,B, 2.06,T, 0.28,G, 4.36,T, 4.41,G, 0.36,B,
One number and one character need to be assigned to each element of the array. I know exactly how to fill a 2D array when it's just numbers, but the characters and the commas are giving me a lot of trouble.
i'm reading a file which has 20 rows and random number of columns, i want to put them in array/vector which i did but the problem is that array is filling a cell with a garbage value at location where i don't have a value in the data file.
suppose i have data file like following (there is tab between each column and each row has different number of columns)
Code:
20 30 10
22 10 9 3 40
60 4
30 200 90
33 320 22
here is my code
Code:
#include <vector>
#include <iostream>
#include <fstream>
[Code]....
Code:
#include <iostream>
#include <fstream>
#include <iomanip>
using namespace std;
struct inventory
[Code]...
This is my program output Enter the file name : "filename".txt ..... (Nothing shows up)
why when I print out "array[2]" nothing prints? It just prints blank space. My file definitely has text in it, but when I try to assign "text" into the array of pointers it won't show any text. I know fgets() appends a newline at the end of the string, not sure if that has anything to do with it, but I've tried printing everything that should be in "array" with a for loop and I get nothing.
Code:
#include <stdio.h>
#define FILEPATH "/home/user/Desktop/text"
int main(){
FILE *myFile = fopen(FILEPATH, "r");
if(myFile == NULL) return 0;
char text[100];
char *array[100];
int idx = 0;
while(fgets(text, 100, myFile)){
array[idx++] = text;
}
puts(array[2]);
}
I have to write a program that reads from a text file, which contains a list of stock hourly prices and the company names. Something like this:
78.52 82.56 75.10 71.97 Water Company
22.40 25.68 21.37 22.96 Mega Shipping Inc
There's suppose to one array of companies, where each company will be kept in a structure that contains: a pointer for the name, an array of the prices, and the average price for the day. The structures will be kept in an array of structures.
My question is, how do I read the data from the file and put the data from each line into the next structure in the array of structures? I read the numbers in fine. I just use:
Code: fscanf(fp, "%f", &companyAry[i].hourlyPrices[j]);
But my program crashes when I try to read the name.
Code: fscanf(fp, "%[^]", &companyAry[i].companyName);
I'm thinking it has something to do with the fact the companyName is a pointer.
My structure looks like this:
Code:
typedef struct {
char *companyName;
float hourlyPrices[NUM_PRICES];
float avgPrice;
}
COMPANY;