假设我有一个文本文件,上面写着: 这个文件有明文如何将文本文件拆分为C中的部分?
现在,我要分这个文本文件与同等人物部分的“N”数字。 假设用户需要三个分区,那么应该创建1.txt,2.txt和3.txt,每个分区大约8个字符。
(该程序的下一部分是将这些文件重新加入原始状态,但我相信我可以自己做到这一点如果我能得到第一部分的帮助)。
你们能指导我解决这个问题吗?使用
语言是C
void main(int argc, char** argv)
{
int iChunkNo=0;
char cFileName[30];
iChunkNo = atoi(argv[2]);
strcpy(cFileName, argv[1]);
printf("The file will be divided into %d chunks \n", iChunkNo);
FILE* file_read_pointer;
file_read_pointer = fopen(cFileName, "r");
int iCount=0;
char ch;
while (1)
{
ch = fgetc(file_read_pointer);
if (ch == EOF)
break;
++iCount;
}
printf("The number of characters in the file is: %d \n", iCount);
int iCharPerFile = 0;
iCharPerFile = iCount/iChunkNo;
printf("The number of characters per chunk file will be: %d \n", iCharPerFile);
FILE* file_write_pointer;
int j=1;
for(j; j<=iChunkNo; j++)
{
char num[5] = {j};
char ext[4] = {"txt"};
char name[15];
sprintf(name, "%d.%s", j, ext);
FILE* file_write_pointer;
file_write_pointer = fopen(name, "w");
}
int i=0;
for(i; i<iCharPerFile; i++)
{
char temp;
temp = fgetc(file_read_pointer);
//fputc(temp, file_write_pointer);
fprintf(file_write_pointer, "%c", temp);
}
}
此问题具有鲜明的家庭作业外观。 – dasblinkenlight 2012-02-18 18:24:58
你是否将空格和换行符计算为字符?如果是这样的话,你总是可以首先对所有字符进行计数,得到总分“n”,然后在读取总共“/”字符后输出。 – 2012-02-18 18:25:52
@JamesMcLaughlin 我不是一个完整的代码复印机:)我喜欢编程,但当我陷入困境时,它让我气愤。我试图发布我的代码。见下面的评论。不会允许我在这里发布。 – Asim 2012-02-19 10:13:43