C Programming/File Manipulation: Difference between revisions
Jump to navigation
Jump to search
(Created page with "When accessing files through C, the first necessity is to have a way to access the files. For C File I/O you need to use a FILE pointer, which will let the program keep track...") |
No edit summary |
||
(One intermediate revision by the same user not shown) | |||
Line 25: | Line 25: | ||
fp = fopen("./test.txt", "w"); | fp = fopen("./test.txt", "w"); | ||
fprintf(fp, "Hello text archive\n"); | fprintf(fp, "Hello text archive\n"); | ||
//fclose(fp;); | |||
fclose(fp); | fclose(fp); | ||
Line 43: | Line 44: | ||
fp = fopen("./test.txt", "r"); | fp = fopen("./test.txt", "r"); | ||
fscanf(fp, "%s", buffer); | fscanf(fp, "%s", buffer); | ||
printf("Read Buffer: %s\n", buffer ); | //printf("Read Buffer: %s\n", %buffer); | ||
printf("Read Buffer: %s\n", buffer); | |||
//fclose(fp;); | |||
fclose(fp); | fclose(fp); | ||
return 0; | return 0; | ||
} | } | ||
</syntaxhighlight> | |||
== Binary IO == | |||
<syntaxhighlight lang="c"> | |||
//for read binary data from file | |||
size_t fread(void *ptr, size_t size_of_elements, size_t number_of_elements, FILE *a_file); | |||
//for write binary data into file | |||
size_t fwrite(const void *ptr, size_t size_of_elements, size_t number_of_elements, FILE *a_file); | |||
</syntaxhighlight> | </syntaxhighlight> |
Latest revision as of 06:44, 5 February 2018
When accessing files through C, the first necessity is to have a way to access the files. For C File I/O you need to use a FILE pointer, which will let the program keep track of the file being accessed. For Example:
FILE *fp;
To open a file you need to use the fopen function, which returns a FILE pointer. Once you've opened a file, you can use the FILE pointer to let the compiler perform input and output functions on the file.
FILE *fopen(const char *filename, const char *mode);
Here filename is string literal which you will use to name your file and mode can have one of the following values
w - open for writing (file need not exist) a - open for appending (file need not exist) r+ - open for reading and writing, start at beginning w+ - open for reading and writing (overwrite file) a+ - open for reading and writing (append if file exists)
File Write
//main.c
#include <stdio.h>
int main(void)
{
FILE *fp;
fp = fopen("./test.txt", "w");
fprintf(fp, "Hello text archive\n");
//fclose(fp;);
fclose(fp);
return 0;
}
File Read
//main.c
#include <stdio.h>
int main(void)
{
FILE *fp;
char buffer[20];
fp = fopen("./test.txt", "r");
fscanf(fp, "%s", buffer);
//printf("Read Buffer: %s\n", %buffer);
printf("Read Buffer: %s\n", buffer);
//fclose(fp;);
fclose(fp);
return 0;
}
Binary IO
//for read binary data from file
size_t fread(void *ptr, size_t size_of_elements, size_t number_of_elements, FILE *a_file);
//for write binary data into file
size_t fwrite(const void *ptr, size_t size_of_elements, size_t number_of_elements, FILE *a_file);