私はCプログラミングの初心者です。クライアントがサーバーからファイルをコピーする関数を書いています。ただし、新しく作成したファイルを開くと、多くの追加文字が含まれています。無駄なデータをコピーしないようにするにはどうすればよいですか?
サーバーの関連セクションは次のとおりです
if (file = fopen(buf, "r")){
//send the file
// while(fgets(buffer, 1024, file) != NULL){
// res = write(new_fd, &buffer, sizeof(buffer));
// }
while(!feof(file)){
fscanf(file,"%s",buffer);
write(new_fd, &buffer, sizeof(buffer));
}
fclose(file);
}
クライアントの関連セクションは次のとおりです
fp = fopen ("testfile", "w");
while(read(sockfd, &buffer, sizeof(buffer)) != -1){
fputs(buffer, fp);
}
fclose(fp);