C :: Writing Structure Array Bytewise To Binary File And Read It Back
Aug 21, 2014
I would like to write a complete structure array to a file and read it back, recovering all the data. I have tried the following:
Code:
#include <stdio.h>
#include <string.h>
#define NUM 256
const char *fname="binary.bin";
typedef struct foo_s {
int intA;
int intB;
char string[20];
[Code]...
//---------------------------------------------------- but the mac field is reading back some random value repeatedly. Why is that? And how do I fix this?
View 8 Replies
ADVERTISEMENT
Mar 10, 2014
So I'm trying to write an array of integers to a binary file. He's my code:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
[Code].....
I know that it is an array of characters right now, and I will be using the reinterpret_cast when I finish my program. Anyways, when I run the executable, it only writes 1234 to the file. My assumption was that the sizeof() was not being set properly, but even manipulating that won't fix it.
View 6 Replies
View Related
May 30, 2013
Both arrays arr and pointers are the same size. I am having problems reading pointers from file into a new int array.
FILE* ky_pt=fopen("stashedclient","ab");
write(fileno(ky_pt), pointers, sizeof(pointers) );
pointerindex=lseek(fileno(ky_pt), 0, SEEK_CUR );
printf("pointerindex after writing array %d
[Code] .......
View 2 Replies
View Related
Dec 10, 2014
I tried to make the program read from a file text the first name or last name but o cant seem to get it. i tried alot of different ways. how can i get the array of structure code to read form a file?
#include <iostream>
#include <fstream>
#include <string>
#include <cstdlib>
using namespace std;
const int NUM_STUDENTS = 17;
const int NUM_QUIZZES = 10;
const int NUM_EXAMS = 5;
[Code] .....
View 14 Replies
View Related
Mar 15, 2013
The Objective Of This Program Is To Create A File To Write Text And Read Back The File Content. To Do That I Have Made Two Function writeFile() To Write And readFile() To Read.The readFile() function works just fine but writeFile() doesn't.
How writeFile() function Works? when writeFile() function Execute It Takes Characters User Type And When Hit Enter(ASC|| 10) It Ask "More?(Y/N)" That Means What User Want? Want To Go Next Line Or End Input?
If "Y" Than Inputs Are Taken From Next Line Else Input Ends.
But The Problem Is When Program Encounters ch==10 It Shows "More?(Y/N)" And Takes Input In cmd variable.If cmd=='Y' I Mean More From Next Line Than It Should Execute Scanf Again To Take ch I Mean User Input.But Its Not!!! Its Always Showing "More?(Y/N)" Again And Again Like A Loop.
Code:
#include <stdio.h>
void writeFile(void);
void readFile(void);
int main(){
[Code].....
View 5 Replies
View Related
Jan 23, 2013
I need to compute some values, place them in a structure containing two vector variables, and save them in a CSV file. Right now, I can't even generate a file. I wrote the structure definition and file writing code in a header file (after first borrowing it). I have a "button" that is supposed to trigger all of the activity. I'll attach the code below:
HEADER
________-----_______------
#ifndef EINSTEIN_H
#define EINSTEIN_H
#include <stdio.h>
struct SizeAll{
int year;
double R;
};
int write_to_file(int count, struct SizeAll *data, char const *fileName)
[code].....
My grasp of pointers and how and when to use them evaporated long ago.
View 14 Replies
View Related
Aug 5, 2013
How to save the struct to file and then read it back from the file ?
Code:
#include <conio.h>
#include <stdio.h>
struct student {
int person;
int egn;
float AvergeGrade;
[Code] ....
Have average grade: %f", person[i].FirstName, person[i].LastName, person[i].egn, person[i].AvergeGrade);
}
//Save to file
getch ();
}
View 2 Replies
View Related
Nov 5, 2013
I am in an "intro" C++ course and am having trouble with a section of my current project.
We are required to open a text file, read the data from that file, and print it back.
However, we are supposed to let the user input the name of the file that is to be opened. This is the code I have so far. It is not opening anything.
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
const int NUM_QUESTIONS = 30;
typedef char CharArray[NUM_QUESTIONS];
string fileName;
[Code]...
View 2 Replies
View Related
Aug 16, 2013
I a want to write a code to convert a string into binary data for that i wrote a code its working perfectly but there is one problem , some of the binary data is written in 7bit and i want to convert it to 8 bit by adding 0 to the last.
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
[Code]....
View 2 Replies
View Related
Mar 6, 2013
I am having problems either writing data to a binary file or reading from the file. Through the process of elimination I am posting the code where the data is written to file to see if I can eliminate that as an option. I know the data is being processed correctly because, through the use of another function, I can view the data.
I also know that fwrite must be including some padding because the file size ends up being 576 bytes after it is written instead of 540 bytes (the size it would be if no padding is used). Here is my struct:
Code:
typedef struct {
char teams[25];
float wins;
float losses;
float pct;
int runsScored;
int runsAgainst;
} STATISTICS;
Here is where I initialize it:
Code:
STATISTICS stats[12] = {
{"Anaheim Arrays", 0.0, 0.0, .000, 0, 0},
{"Pittsburg Pointers", 0.0, 0.0, .000, 0, 0},
{"Indianapolis Integers", 0.0, 0.0, .000, 0, 0},
[Code] ....
And here is the function that writes my data. The sA array is only used to change the scheduled games based on the variable week.
Code:
void schedule(STATISTICS stats[]) {
FILE *f;
int sA[12], week = 0, runsPerGameA = 0, runsPerGameB = 0, runsAgainstA = 0, runsAgainstB = 0;
int index, a = 0, b = 1, i = 0;
[Code] .....
View 13 Replies
View Related
Feb 17, 2014
cant write to binary file
#include <stdio.h>
#include <stdlib.h>
typedef struct {
int number;
} something;
void main() {
int numbers[10]={1,2,3,4,5,6,7,8,10,12};
[Code] .....
View 2 Replies
View Related
Aug 5, 2013
I am trying to write down in binary format an array of unsigned int values but i get the following compilation error :
: In function ‘int CIndex(std::fstream&, std::fstream&, std::fstream&, std::fstream&)’:
./src/IndexBuilder/index.cpp:23:26: error: no matching function for call to ‘std::basic_fstream<char>::write(int*, long unsigned int)’
./src/IndexBuilder/index.cpp:23:26: note: candidate is:
/usr/include/c++/4.6/bits/ostream.tcc:184:5: note: std::basic_ostream<_CharT, _Traits>& std::basic_ostream<_CharT, _Traits>::write(const _CharT*, std::streamsize) [with _CharT = char, _Traits = std::char_traits<char>, std::streamsize = long int]
This is the part the is not working:
Code:
// uia is : unsigned int * uia;
// then I have allocated the space for it
// load it with unsigned int's
// k is the number of variables in my array
o.write(uia,sizeof(unsigned int)*k); But thsi should be so simple and strait forward.... in c i do it as :
Code:
fwrite(uia, sizeof(unsigned int), k , fp); but since i would need to convert fstream to FILE* i decided to do it c++ way.
and this is how i opened the file :
Code:
o.open (fileName.c_str(),std::ios::out|std::ios::binary);
View 5 Replies
View Related
Apr 16, 2013
I am making a calendar to look similar to Outlook, but it is in c++ and I am starting from scratch. I have broken it into parts, and the part I am struggling with is making the next/previous month button to add to the calendar. I have a basic code, but I don't know exactly what I need to change or add to it. The code is,
#include "std_facilities_lib_3.h"
#include <iostream>
#include <sstream>
#include "Graph.h" // get access to our graphics library facilities
#include "GUI.h"
#include "Window.h"
[Code] .....
View 2 Replies
View Related
Mar 28, 2014
I'm trying to insert a structure into a binary file, then read it back out into a "temporary" structure and output some values.
#include <iostream>
#include <fstream>
using namespace std;
struct b_tree_node {
int num_keys; // number of keys in this node
int key_val[3]; // key values (0 to num_keys - 1)
int child[4]; // child file addresses (0 to num_keys)
[Code] ....
View 12 Replies
View Related
Mar 27, 2014
I'm trying to save a structure to a binary file, then read it out of the binary file into a new structure. I am unsure what is happening but it is not correct.
#include <iostream>
#include <fstream>
using namespace std;
[Code]....
View 2 Replies
View Related
Jul 9, 2014
fstream ifs;
ifs.open ("data.str", ios::binary | ios:ut);
char *data1 = "data1";
char *data2 = "data2";
ifs.write(data1, strlen(data1));
ifs.write(data2, strlen(data2));
when i this,data2 is not going under data1, i thought each write starts on a new line?
View 4 Replies
View Related
Feb 6, 2014
I am writing a simple file/text parser to read a config file for some code I am working on. It's dead simple and not particularly smart but it should get the job done. The code reads a config file:
Code:
readlength=2500000
start=0
finish=25000000
cutoff=20000
samplingfreq=250000
poles=10
filterpadding=500
}
[code]....
Here is where it gets wierd. You'll notice that there is an unused variable (filepath) in the config struct. This variable is not referenced or used anywhere in the code, ever. Yet if I comment out the declaration of char filepath[1024], the code segfaults partway through the read_config() function.
My best guess is that there is a buffer overflow elsewhere and it just so happens that the memory allocated for filepath happened to be there to catch it up until now, but I can't work out where it might be happening. With the declaration commented out, the read_config() function gets as far as reading the "padding" variable before it crashes. Yet when the declaration is there, then all the variabled are read correctly and everything seems to work.
View 10 Replies
View Related
Oct 20, 2013
When you have to write data on a file in binary mode multiple times (without closing the file), is the put pointer left where you ended writing the last time, or do you have to use tellp() or seekp() again and again to make sure you write at the right place?
I would have the same question about the get pointer, does he stay in place after you're done reading something (without closing the file, of course), or do you have to set it back at the right place with seekg() ??
View 5 Replies
View Related
Nov 24, 2013
When I tried to run my code I keep getting a "Segmentation fault".
I am trying to write a code that read from a file and put the data into a structure.
The file look like the following:
2001,ABBIGAEL,5
1994,ABBIGAIL,5
1996,ABBIGAIL,8
1997,ABBIGAIL,13
The file have 31 lines.
Code:
#include <stdio.h>
#include <string.h>
int main() {
/* Define a daydata structure */
typedef struct {
[Code]....
View 4 Replies
View Related
Mar 29, 2014
How would i write a functor for this code. The code is written to read data from a file and store in a multimap.
The data has numbered lines. E.g.:
1 This is a string
2 This is a string too
So the aim is to store each word in the line with the number and then to enter a word to search for the line numbers it appears on. I do not know how to go about and write a functor
#include<iostream>
#include<sstream>
#include<fstream>
#include<cstdlib>
#include<map>
using namespace std;
int main() {
multimap<int, string>myMap;
[Code] ....
View 4 Replies
View Related
May 19, 2014
I am trying to use arithmetic on structure members read from separate text files into separate functions. I'm trying to do the math in the main function after calling the other two functions. I'm trying to divide nato_attack by pact_defence.
The warning I'm getting is: both are being used uninitialized in this function.
The goal is to read/write the info in the text files and to use them as any other variable, i.e. add, subtract, etc. in other locations in my code, i.e. functions, modules.
I "borrowed" most of this code from a youtube lesson and modified it for my needs.
Below is the contents of the two text files and my code.
This is for NATO
6
12 4th_mech_div mech div 14 16 7
12 5th_mech_div mech div 10 8 7
12 3rd_mech_div mech div 5 6 6
12 1st_mech_div mech div 4 6 7
12 2nd_mech_div mech div 12 14 7
12 6th_mech_div mech div 8 12 6
This is for Pact
3
10 1st_Guards armor div 12 8 6
10 2nd_Guards armor div 12 9 6
10 3rd_Guards mechanized div 10 9 6
Code:
#include <stdio.h>
#include <stdlib.h>
typedef struct {
char *unit_id;
char *unit_type;
char *unit_size;
[Code] ....
View 9 Replies
View Related
Nov 24, 2014
When reading a binary .img why is it when you read it by slurping in the file, then save it to a string and cout, you don't see the binary but random garbage?
View 11 Replies
View Related
Apr 22, 2013
I am trying to get the code to read from the txt file one bite at a time and then write this bite into the binary file but i cant seem to get it working.
FILE *fpcust, *fpcustbin; //<<<<<-----point to both sales and customers text files, and the new .bin files for both
char buffer;
int ch;
int ch1;
fpcust = fopen("c:customers.txt", "r"); //<<<<-----pointing to the file
fpcustbin = fopen("c:customers.bin", "wb"); //<<<<<-----pointing to the new binary file, opening in writing binary
[Code]...
View 3 Replies
View Related
May 6, 2014
I use the following function to read doubles from a binary file:
Code:
int64_t read_current(FILE *input, double *current, uint64_t position, uint64_t length)
{
printf("asked for %" PRIu64" samples
",length);
printf("reading from %" PRIu64 " to %" PRIu64 "
",position,position+length);
union{
double d;
uint64_t i;
}
[code]...
As long as position+length doesn't exceed the end of the file, all is well. However, if it does, weird things start to happen. In particular, the apparent length of the file (that is, the value of "read" after the function has finished) becomes dependent on "length"). I know that "position" is never past the end of the file.
View 12 Replies
View Related
Oct 12, 2014
I have this file want to read it source code [URL] ....
View 10 Replies
View Related
Nov 9, 2013
I'm trying to do file compression/decompression in C and I need to handle one bit at a time.
I currently try to do:
unsigned char byte = fgetc(fptr);
and later
byte >>= 1;
but the problem is that I have to use the first bit of the byte and then treat the next 8 bits as one byte. The byte usage keeps shifting over in this way. It's probably quite clear that I'm a bit lost.
View 1 Replies
View Related