Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <unistd.h>
- #include <fcntl.h>
- #include <stdio.h>
- #include <stdlib.h>
- void NoweZnakiDoPliku(const char *fname)
- {
- FILE* plik = fopen(fname, "w+r" );
- int i;
- int liczbaDoZapisu;
- //char *doZapisu;
- for(i = 0; i<5; i++)
- {
- scanf(" %d", &liczbaDoZapisu);
- fflush(plik);
- fprintf(plik, "%d\n", liczbaDoZapisu);
- fflush(plik);
- }
- fclose(plik);
- }
- int *OdczytajDoTablicy(const char *fname, int *rozmiar)
- {
- FILE* plik = fopen(fname, "r+" );
- int n;
- int i = 1;
- int* tab;
- tab = (int*)malloc(sizeof(int) * i);
- int napotkanoEOF = 0;
- while(!napotkanoEOF)
- {
- fscanf(plik, "%d\n", &n);
- if(feof(plik) != 0)
- {
- napotkanoEOF = 1;
- }
- tab[i-1] = n;
- i++;
- tab = (int*)realloc(tab, sizeof(int) * i);
- }
- *rozmiar = i-1;
- fclose(plik);
- return tab;
- }
- void OdczytajTablice(int* tab, int rozmiar)
- {
- int i;
- for(i = 0; i<rozmiar; i++)
- {
- printf("%d \n", tab[i]);
- }
- }
- int exists(const char *fname)
- {
- FILE *file;
- if ((file = fopen(fname, "r")))
- {
- fclose(file);
- return 1;
- }
- return 0;
- }
- const char* fpName = "liczby.txt";
- int main()
- {
- printf("Wybierz opcje:\n a - napisz 5 liter do pliku\n b- modyfikuj wprowadzone\n");
- char chooseOption;
- scanf(" %c", &chooseOption);
- switch (chooseOption)
- {
- case 'a':
- NoweZnakiDoPliku(fpName);
- break;
- case 'b':
- if(exists(fpName))
- {
- printf("Plik nie istnieje! Najpierw dopisz!\n");
- return 1;
- }
- break;
- default:
- printf("Bledne polecenie, elo\n");
- return 1;
- }
- printf("Wpisz A, G lub H\n");
- scanf(" %c", &chooseOption);
- FILE* plik = fopen(fpName, "w+r" );
- int rozmiar;
- int *tab;
- switch (chooseOption)
- {
- case 'A':
- tab=OdczytajDoTablicy(fpName, &rozmiar);
- OdczytajTablice(tab, rozmiar);
- break;
- case 'G':
- break;
- case 'H':
- break;
- }
- return;
- int des;
- des = open( "file.txt", O_CREAT | O_WRONLY | O_APPEND, 0666 );
- if( des < 0 ){
- write( 2, "Error!\n", 7 );
- return 1;
- }
- if( write( des,"Test!\n", 6) != 6) {
- write( 2, "Error!\n", 7);
- return 1;
- }
- close(des);
- des = open( "file.txt", O_RDONLY, 0666 );
- if( des < 0 ){
- write( 2, "Error!\n", 7 );
- return 1;
- }
- char tst[20];
- read(des, tst, sizeof(tst));
- fprintf(stdout, "Odczytano: %s\n", tst);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement