从文件中读取字符串

我有一个文本文件。 我必须从文本文件中读取一个字符串。 我正在使用c代码。 任何身体可以帮助吗?

使用fgetsC中的文件中读取字符串。

就像是:

 #include  #define BUZZ_SIZE 1024 int main(int argc, char **argv) { char buff[BUZZ_SIZE]; FILE *f = fopen("f.txt", "r"); fgets(buff, BUZZ_SIZE, f); printf("String read: %s\n", buff); fclose(f); return 0; } 

为简单起见,避免安全检查

 void read_file(char string[60]) { FILE *fp; char filename[20]; printf("File to open: \n", &filename ); gets(filename); fp = fopen(filename, "r"); /* open file for input */ if (fp) /* If no error occurred while opening file */ { /* input the data from the file. */ fgets(string, 60, fp); /* read the name from the file */ string[strlen(string)] = '\0'; printf("The name read from the file is %s.\n", string ); } else /* If error occurred, display message. */ { printf("An error occurred while opening the file.\n"); } fclose(fp); /* close the input file */ } 

这应该工作,它将读取整行(你不清楚你的意思是“字符串”):

 #include  #include  int read_line(FILE *in, char *buffer, size_t max) { return fgets(buffer, max, in) == buffer; } int main(void) { FILE *in; if((in = fopen("foo.txt", "rt")) != NULL) { char line[256]; if(read_line(in, line, sizeof line)) printf("read '%s' OK", line); else printf("read error\n"); fclose(in); } return EXIT_SUCCESS; } 

如果一切顺利,返回值为1,出错时为0。

由于它使用普通的fgets(),它将在行的末尾(如果存在)保留’\ n’换行符。

这是从文件中获取字符串的简单方法。

 #include #include #define SIZE 2048 int main(){ char read_el[SIZE]; FILE *fp=fopen("Sample.txt", "r"); if(fp == NULL){ printf("File Opening Error!!"); } while (fgets(read_el, SIZE, fp) != NULL) printf(" %s ", read_el); fclose(fp); return 0; }