C++ :: Binary IO - Read 4 Byte Int From A File

Feb 26, 2012

Trying to write very simple code to read a 4 byte int from a file.

code:

int tester;
FILE *fp;
fp=fopen("/home/bdluser/skeleton.blx","rb");
fread(&tester,sizeof(int),1,fp);
printf("tested 1 byte read should be 1: %i",tester);

I have tried editing the binary file....it outputs similar large numbers

00000000000000000000000000000001 outputs 808464432
0x00000001 outputs 808482864
0x10000000 outputs 808548400
10000000000000000000000000000000 outputs 808464433
x01x00x00x00 outputs 813183068
x00x00x00x01 outputs 813183068 same....

etc.etc. It just keeps returning the same large integers. I thought they were memory addresses but its consistent output/input so I guess not.

View 2 Replies


ADVERTISEMENT

C++ :: Read Byte Of Char Data And Convert It Into Text String Of Binary Data That Represents Hex Value

Dec 26, 2013

I am writing a program where I need to read a byte of char data and convert it into a text string of binary data that represents the hex value...

i.e. The char byte is 0x42 so I need a string that has 01000010 in it. I've written the following subroutine....

------------- My Subroutine ----------------------------------------------------------------------
void charbytetostring(char input, char *output){
int i, remainder;
char BASE=0x2;
int DIGITS=8;
char digitsArray[3] = "01";

[Code] ....

When I submitted the byte 0x42 to the subroutine, the subroutine returned to the output variable 01000010... Life is good.

The next byte that came in was 0x91. When I submit this to the subroutine I get garbage out.

I am using a debugger and stepped through the subroutine a line at a time. When I feed it 0x42 I get what I expect for all variables at all points in the execution.

When I submit 0x91 When the line remainder = input % BASE; gets executed the remainder variable gets set to 0xFFFF (I expected 1). Also, when the next line gets executed..

input = input / BASE; I get C9 where I expected to get 48.

My question is, are there data limits on what can be used with the mod (%) operator? Or am I doing something more fundamentally incorrect?

View 6 Replies View Related

C :: Byte Ordering In Binary Buffer

Apr 13, 2014

Basically it has to do with the byte ordering in a binary buffer vs the typing of a variable used to hold it.

To give you an example, if I have a buffer (say of indefinite length), and a ptr "ptr" pointing to a byte in the buffer (say, C0), such that if I open the buffer in a binary viewer it reads like this: Code: C0 DD FE 1F Such that this is true:

Code:
/*ptr is uint8_t*/
*ptr == 0xC0

Then I do this:

Code:
uint16_t var;
var = *(ptr+1);

I would expect the result to be:

Code: DD FE /*56830*/

Though if I print that out with:

Code:
printf("%u
", var);

It'll print:

Code: 65245 /*(FE DD)*/

Now obviously it's byte swapped, but what is causing that? I'm assuming if I just stream that out to a file byte by byte it'll be fine, so it's something with the 16 bit data type (also have seen this issue with a 32 bit data type, where all 4 are in reverse order). Is there any way to 'fix' it except bit shifts & masks?

View 14 Replies View Related

C++ :: How To Read A Bit From A Byte

Mar 30, 2013

What is the most efficient way to read a bit at a particular position in a byte?

View 13 Replies View Related

C++ :: Most Efficient Way To Read A Bit From A Byte?

Mar 30, 2013

What is the most efficient way to read a bit at a particular position in a byte?

View 3 Replies View Related

C++ :: How To Read Binary Img File

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

C++ :: Read From Txt File One Bit At A Time And Then Write Into Binary File

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

C :: Read Doubles From A Binary File

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

C++ :: How To Read Struct From Binary File

Oct 12, 2014

I have this file want to read it source code [URL] ....

View 10 Replies View Related

C/C++ :: Best Way To Read One Bit At A Time From A Binary File?

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

C++ :: Read In Binary Files Then Write To Another File

Oct 11, 2014

I would like to read in binary files, then write them to another file.

I write a code, what works perfectly, if I would like to just copy the file to another. But I want to make it a little other.

If I open a file in hex-editor I also can see the ASCII values. But I would like get the ONLY the hex values to the other file.

For example:

d5 57 4f ad 30 33 0b 4e 49 a7 05 18 c4 90 66 d8 45 ac 39 3e 7d f1 a8 02 80
14 20 90 6e 20 12 38 0c 65 4a 28 d2 80 72 04 20 a9 4a 82 84 60 6a 0b 25
59 4c 30 c8 69 c0 ec fa 36 ed 3a da b1 9a 82 02 e0 bb 7e 41 87 02 f6 10 34
eb 95 93 63 01 6b 8d e1 d7 43 c3 df 92 5d 8a ed 57 61 4e 36 07 2a d7 56 2b
b5 0e 55 83 b4 76 8c b7 61 77 0e c9 76 0c 81 1b 01 63 0c 8b 73 57 d5 6d 4c
0c c2 0d 52 45 18

How could I make it?

View 4 Replies View Related

C++ :: Read Binary File With Line Delimiter?

Oct 3, 2013

I want to read a binary file using as line separator "ff77" in order to parse further each line one by one with some regex since the file is big. I have a small ruby code shown below, but I'm new in C++, and I don't know how to replicate in C++ what this ruby code does.

Code:
#!/usr/bin/env ruby
BEGIN{ $/="xffx77" } # Line separator = FF77
File.open(ARGV[0],"rb") # Open in binary mode

[Code].....

View 14 Replies View Related

C++ :: Read Binary File With Line Delimiter

Nov 2, 2013

I run with debugger and appear this file referring the error to line 142 (in red):

Code:
/***
*xtoa.c - convert integers/longs to ASCII string
*
* The module has code to convert integers/longs to ASCII strings. See
*
*******************************************************************************/

#include <cruntime.h>
#include <stdlib.h>
#include <limits.h>
#include <tchar.h>
#include <internal.h>
#include <internal_securecrt.h>
#ifdef _UNICODE
#define xtox_s xtow_s

[Code] ...
In the calls stack window appears this

Code:
=>msvcr110d.dll!xtoa_s(unsigned long val, char * buf, unsigned int sizeInTChars, unsigned int radix, int is_neg) Line 142C
msvcr110d.dll!_itoa_s(int val, char * buf, unsigned int sizeInTChars, int radix) Line 176C
Get_Blocks.exe!main(int argc, char * * argv) Line 224C++
Get_Blocks.exe!__tmainCRTStartup() Line 536C
Get_Blocks.exe!mainCRTStartup() Line 377C
kernel32.dll!7695336a()Unknown

[Frames below may be incorrect and/or missing, no symbols loaded for kernel32.dll]
ntdll.dll!76f19f72()Unknown
ntdll.dll!76f19f45()Unknown

It seems could be becuase to _itoa_s(), I'm using like this:

Code:
_itoa_s(CONVDEC(i), num, 10, 10);
sub += num;

View 5 Replies View Related

C :: Write / Read Tree Nodes Into A Binary File

Oct 20, 2013

I have a binary tree, and I want to store all information its leaves stores into a binary file and then read it.

What I tried:

A function that reads the tree, and whenever it finds a leaf, it writes in the binary file:

Code:
[...]
if(tree->right == NULL && tree->left == NULL){
fwrite(tree, sizeof(tree), 1, output);
}
[...] a

And in the main function:

Code:
[...]
for(i=0;i<5;i++){
fread(tree, sizeof(tree), 1, output);
printf("This is the leaf number %d", tree->num);
}
[...]

I'm trying to read 5 nodes just to see if its working but it isn't. The output shows the first node of the tree everytime.

View 2 Replies View Related

C++ :: Read And Write Binary Tree To File - Deserialization

Jun 24, 2013

So as a learning exercise, I am trying to read and write a binary tree to a file. After googling around, I decided to use a preorder traversal (including null nodes) to write the binary tree to the file. I got stuck trying to read a tree from a file. I can't figure out how to create an unknown number of nodes when they are needed. I could use an array, but that just seems bulky - plus it could run out of space. Is that what I have to do? I've heard of vectors before, but not very much.

View 5 Replies View Related

C++ :: Write And Read Class Objects In Binary File?

Jan 11, 2013

if i have 2 variables for which values are given by the user,then,does the information get stored into the file in the name of the variable,or just like packs of information.....if the former is true,how to extract the information of a particular variable alone from the whole file?

View 4 Replies View Related

C++ :: Reading Binary File / Doesn't Read All Letters

Mar 2, 2013

I'm reading a binary file and I want to read all of the letters, but I have noticed that it doesn't read all of the letters and I think it is because of appears as data.

View 11 Replies View Related

C :: Program To Read Binary Data And Print It - File I/O Error

Mar 14, 2013

Objective of this program is to read binary data from a file and print it.

Code:
#include <stdio.h>
void readFile(void);
int main(){
readFile();
return 0;

[Code] .....

But When I Run This Code First It Print "Error." Then Rest Of The File.Say In My File I Have "I AM HUMAN", It Prints "Error. HUMAN"!!

I Cant Figure Out Whats Wrong In The readFile() Function.It seems right to me.

View 4 Replies View Related

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 View Related

C :: Binary File Write By User Input Then Printing Binary File Data Out

Dec 6, 2013

Following is the program I wrote it basically takes 9 inputs and then save them into binary file. then print out the data stored in binary data and find inverse of it then print the inverse out. but its stuck in a loop somewhere.

Code:
#include <stdio.h>
int main() {
int a[3][3],i,j;
float determinant=0;
int x;
FILE *fp = fopen ("file.bin", "wb");

[Code] .....

View 6 Replies View Related

C# :: Reading A File Into A Byte Array?

Jun 25, 2014

I basically want to create a save editor application that will enable people to alter various values in the save by clicking on releveant buttons and then also for the editor to auto update the checksum when changes are done.

The save file is in hex so from what I can gather I would need to create a button to open the file using 'open file dialogue' and then read the file into a byte array so that the values can be called at any time when a particular butto is pressed and the application will then seek to the point in the file to make the required changes.

View 3 Replies View Related

C# :: Get Posted File From Byte Array

Oct 7, 2014

I have an application that has its own embedded web server. I am trying to add jQuery/Ajax file upload capabilities to the application however, I am running into issues getting the posted file. The jQuery/Ajax portion is similar to this method here. Due to the way the webserver was written (its in a dll and I do not have access to the source), the posted file comes in as a byte[]. If I try to save the byte array directly to file using:

File.WriteAllBytes("path", ByteArray)

I end up with a corrupt file that I cannot open. I believe this is because the byte array also contains the posted file header info (Content-Disposition, name, filename, etc.). If I view the contents of the byte array using:

System.Text.Encoding.Default.GetString(ByteArray)
the header info can be viewed as:
------WebKitFormBoundaryQfPjgEVpjoWgA5JL
Content-Disposition: form-data; name="0"; filename="someimage.png"
Content-Type: image/png
‰PNG

Based on the selected file size and the size of the byte array, the entire file is in the byte array. How can I go about extracting and saving the posted file from the byte array?

View 2 Replies View Related

C++ :: How To Read Binary Files

Sep 20, 2014

I'm trying read a binary file. A binary files is continued with bytes(ascci characters). and the 1st position is the position 0(zero).

I'm trying read just some values from ICO file:

- the 3rd value is in 4th-1 position(number of icons); (See the table: [URL] .... )
- the with is the (numberoficons*16) + 4 (the 16 is the Entries structure size) position;
- the height is the (numberoficons*16) + 4 + 4 (the 16 is the Entries structure size) position.

now see the code:

int iconwidth;
int iconheight;
int iconcount;
FILE *iconfile = fopen(filename.c_str(), "rb");//open the file
fseek(iconfile,4-1,SEEK_SET); //put the file in position 6(the position starts from 0)
fread(&iconcount,sizeof(char),2,iconfile);//get 2 blocks with char size(2 bytes).. i'm getting the number of icons

[Code] ....

so what i'm doing wrong with block positions?

View 13 Replies View Related

C :: How To Read String From Binary Files

Sep 6, 2013

I have a structure stored in a binary file, now I want to read each string from it (or line), can I do that using fgets?

View 12 Replies View Related

C++ :: Read Text Write Binary

Feb 4, 2013

I am planning to use this mostly to copy binary files, but why won't this work with text???

input.txt
int main(int argc, char* argv[]) {
// open file
std::ifstream ifs;
ifs.open("./input.txt", std::ios::binary);

[Code] ....

output.txt
310^?z^@^@^@^@^@300367346^A^@

Will this method always work to copy a file?

View 2 Replies View Related

C++ :: How To Open Binary For Read And Write

Feb 19, 2014

#include <stdio.h>
#include <stdlib.h>

int main () {
FILE * pFile;
long lSize;
char * buffer;
size_t result;
pFile = fopen ( "myfile.bin" , "rb" );

[Code] .....

How to open binary for read and write? Why the buffer is char * buffer? i mean in binary u cant read chars . How can it be? how the data is represented? just like txt file? What the buffer will contain how to print this buffer???

View 3 Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved