From 59cc6670da4ea2223b859a518f4d99218a60db0b Mon Sep 17 00:00:00 2001 From: fdlt3817 Date: Fri, 27 Jan 2023 16:45:53 +0100 Subject: [PATCH] Functionality of the updateCustomerAccountBalance has been completed --- src/CustomerData.txt | 7 ++- src/TempData.txt | 5 -- src/a.exe | Bin 269557 -> 269211 bytes src/updateCustomerAccountBalance.c | 71 ++++++++++++++--------------- src/updateCustomerAccountBalance.h | 2 +- 5 files changed, 40 insertions(+), 45 deletions(-) delete mode 100644 src/TempData.txt diff --git a/src/CustomerData.txt b/src/CustomerData.txt index 782579a..05ec80e 100644 --- a/src/CustomerData.txt +++ b/src/CustomerData.txt @@ -1 +1,6 @@ -balance=500 \ No newline at end of file +1234=example +ID=1234 +forename=Max +Surname=Mustermann +password=example +balance=1000 \ No newline at end of file diff --git a/src/TempData.txt b/src/TempData.txt deleted file mode 100644 index f81d5a8..0000000 --- a/src/TempData.txt +++ /dev/null @@ -1,5 +0,0 @@ -1234=example -ID=1234 -forename=Max -Surname=Mustermann -balance=0 diff --git a/src/a.exe b/src/a.exe index 25d0c588eaca7bdbf95cbee6f46f9623fe60a8f9..4083994a33269e5e2e3ac93d883afcbc797f6ad3 100644 GIT binary patch delta 23329 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 delta 23466 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 U*NXp5X;D&&!H`tA*pM##FMse1IRF3v diff --git a/src/updateCustomerAccountBalance.c b/src/updateCustomerAccountBalance.c index 48ad5e8..6ee64e9 100644 --- a/src/updateCustomerAccountBalance.c +++ b/src/updateCustomerAccountBalance.c @@ -1,51 +1,45 @@ #include "updateCustomerAccountBalance.h" #include "currentCustomerAccountBalance.c" -void deleteLineFromFile(int line){ - FILE *fptr1, *fptr2; - char file1[] ="CustomerData.txt"; - char file2[] ="TempData.txt"; - char curr; - int del=line, line_number = 0; - fptr1 = fopen(file1,"r"); - fptr2 = fopen(file2, "w"); - curr = getc(fptr1); - if(curr!=EOF) {line_number =1;} - while(1){ - if(del != line_number){ - putc(curr, fptr2); - curr = getc(fptr1); - if(curr =='\n') line_number++; - if(curr == EOF) break; - }else{ - - } - +void deleteLineFromFile(const char* file_name, int line, const char* new_line){ + FILE* file = fopen(file_name, "r"); + if (file == NULL) { + printf("Error opening file!\n"); + return; + } + char current_string[1024]; + int current_line = 1; + char *temp_file_name = "temp.txt"; + FILE* temp_file = fopen(temp_file_name, "w"); + if (temp_file == NULL) { + printf("Error creating temp file!\n"); + fclose(file); + return; + } + while (fgets(current_string, sizeof(current_string), file) != NULL) { + if (current_line == line) { + fprintf(temp_file, "%s", new_line); + } else { + fprintf(temp_file, "%s", current_string); + } + current_line++; } - fclose(fptr1); - remove(file1); - fclose(fptr2); - rename(file2,"CustomerData.txt"); - + fclose(file); + fclose(temp_file); + if(remove(file_name)!=0){ + printf("could not remove the original file!"); + } // Remove the original file + if(rename(temp_file_name, file_name)!=0){ + printf("could not rename!"); + } // Rename the temp file to the original file } void replaceBalanceInString(float replacementBalance, int currentLine) { - deleteLineFromFile(currentLine-1); - printf("deleting from line %i. balance will be replaced with %f", currentLine, replacementBalance); char newBalanceLine[MAX_LENGTH] = "balance="; char balance_as_string[MAX_LENGTH]; sprintf(balance_as_string, "%g", replacementBalance); //converts replacement balance to string strcat(newBalanceLine, balance_as_string); - printf(newBalanceLine); - - char buffer[MAX_LENGTH]; - FILE *file = fopen("CustomerData.txt", "w"); - - for(int i=0;i