Saya diberi jalur ke file yang harus saya modifikasi, apakah menambahkan data ke dalam file, atau mengganti data di file.txt.
Saya juga diberi batasan, jika ada 100 karakter dalam string yang ditunjukkan oleh data, dan batasannya adalah 10, maka fprintf harus menulis 10 karakter pertama saja.
Tampaknya fprintf tidak mengambil parameter (batas) seperti itu. Bisakah seseorang menyarankan cara bagi saya untuk menyelesaikan ini? Terima kasih sebelumnya!
void my_write (char* path, int bytes_number, char* flag, char* data, int sockfd)
{
FILE* fp;
int n, i;
char buffer[BUFFER_SIZE];
if (!strcmp(flag, "override"))
{
fp = fopen(path, "w+"); /* Open file with flag 'w' to override data */
if (fp == NULL) /* File doesn't exist, invalid path*/
write (sockfd, "Failure", strlen("Failure"));
i = fprintf (fp, "%s\n", data);
if (i < 0)
write (sockfd, "Failure", strlen("Failure"));
else
write (sockfd, "Write Success", strlen("Write Success"));
}
rest of code
}