#include <stdio.h>
#include <conio.h>
#include <string.h>
void main()
{
FILE *fp1,*fp2;
char ch;
fp1=fopen("E:\\data1.txt","r+t");
fp2=fopen("E:\\data2.txt","w+t");
if(fp1==NULL)
{
printf("File not found.\n");
}
else
{
do
{
ch = fgetc(fp1);
fputc(ch,fp2);
}
while(!feof(fp1));
printf("File coppy complete.");
getch();
}
fclose(fp1);
fclose(fp2);
}
/* สมมติใน data1.txt ใส่ข้อมุล abc ไว้นะครับ พอ run โปรแกรม วนรอบ do...while รับมาทีละตัวอักษร
ช่วง while(!feof(fp1)); จะเชคว่าขอมูลหมดรึยัง หลังจากตัวแปร ch รับตัว c ซึ่งเป็นอักษรตัวสุดท้ายแล้วมันจะ ส่งค่า -1 กลับมา
เพื่อบอกว่าสิ้นสุดแล้วนะ แต่มันดันเอา (-1) ซึ่งเป็นตัวสี่เหลี่ยม มาแสดงใน data2.txt ด้วยนี่สิครับ จะเขียนยังไงเอา -1 หรือตัว สี่เหลี่ยม
ออกดีครับ ผมลองเอา while มาเชคด้านบนก่อนแล้วก็มีค่าเหมือนเดิม
while(!feof(fp1))
{
ch = fgetc(fp1);
fputc(ch,fp2);
}
*/
ขอคำแนะนำด้วยนะครับ
ถามโค้ด ภาษา C ครับ
#include <conio.h>
#include <string.h>
void main()
{
FILE *fp1,*fp2;
char ch;
fp1=fopen("E:\\data1.txt","r+t");
fp2=fopen("E:\\data2.txt","w+t");
if(fp1==NULL)
{
printf("File not found.\n");
}
else
{
do
{
ch = fgetc(fp1);
fputc(ch,fp2);
}
while(!feof(fp1));
printf("File coppy complete.");
getch();
}
fclose(fp1);
fclose(fp2);
}
/* สมมติใน data1.txt ใส่ข้อมุล abc ไว้นะครับ พอ run โปรแกรม วนรอบ do...while รับมาทีละตัวอักษร
ช่วง while(!feof(fp1)); จะเชคว่าขอมูลหมดรึยัง หลังจากตัวแปร ch รับตัว c ซึ่งเป็นอักษรตัวสุดท้ายแล้วมันจะ ส่งค่า -1 กลับมา
เพื่อบอกว่าสิ้นสุดแล้วนะ แต่มันดันเอา (-1) ซึ่งเป็นตัวสี่เหลี่ยม มาแสดงใน data2.txt ด้วยนี่สิครับ จะเขียนยังไงเอา -1 หรือตัว สี่เหลี่ยม
ออกดีครับ ผมลองเอา while มาเชคด้านบนก่อนแล้วก็มีค่าเหมือนเดิม
while(!feof(fp1))
{
ch = fgetc(fp1);
fputc(ch,fp2);
}
*/
ขอคำแนะนำด้วยนะครับ