我在C編程方面真的很新,所以我需要讀一個大文件,將它分成每個點,然後在新文件中寫入我在分割時得到的內容,所以我有寫幾個文件,問題是當我命名新文件。 我一直在這個項目工作一週,我無法修復這個問題。 這裏的代碼我到目前爲止在C編寫,閱讀和拆分文件
#include <stdio.h>
#include <string.h>
char *myRead(char file_name[]){
char *output;
long size;
FILE *myfile = fopen(file_name,"rb");
fseek(myfile, 0, SEEK_END);
size = ftell(myfile);
rewind(myfile);
output = (char*) malloc(sizeof(char) * size);
fread(output,1,size,myfile);
fclose(myfile);
return output;
}
void myWrite(char content[], int i){
FILE *myfile;
myfile = fopen(i,"w");
fprintf(myfile,"%s",content);
fclose(myfile);
}
void split(char *content){
int word_length = strlen(content);
int i = 0;
char *output = strtok (content,".");
while (output != NULL){
myWrite(output,i);
printf("%s\n", output);
output = strtok (NULL, ".");
i++;
}
}
int main(){
char file_name[] = "hourglass.txt";
char *content = myRead(file_name);
split(content);
return 0;
}
我想知道那是什麼我該怎麼辦幾個文件只是一個號碼叫什麼名字? (英文它不是我的主要語言,不要粗魯請)
如果沒有至少6個字符變化,我不能編輯,但是您的變量在第二個語句中是錯誤的。 – Luis 2014-08-28 16:52:55
我很感謝你,埃德,這項工作就是我想要的:D! – cafej 2014-08-28 16:58:18
請使用'snprintf'而不是'sprintf',並且後者不安全。 – Jay 2014-08-28 17:21:13