Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C将程序中的文件替换为字符串_C_String - Fatal编程技术网

C将程序中的文件替换为字符串

C将程序中的文件替换为字符串,c,string,C,String,我有一个从xxx.conf文件读取数据配置的程序 FILE *file = fopen("xxx.cof", "rb"); 然后,数据如下所示: char line[128]; while(fgets(line, sizeof(line), file)) 我想将文件xxx.conf替换为字符串file=“name=xxxx\nsurname=xxx\n address=xxx” 我希望程序从字符串中读取数据 反而 FILE *file = fopen("xxx.conf", "rb"):

我有一个从xxx.conf文件读取数据配置的程序

FILE *file = fopen("xxx.cof", "rb");
然后,数据如下所示:

char line[128];
while(fgets(line, sizeof(line), file))
我想将文件xxx.conf替换为字符串file=“name=xxxx\nsurname=xxx\n address=xxx”

我希望程序从字符串中读取数据

反而

FILE *file = fopen("xxx.conf", "rb"):

file = "name = xxx\nsurnam =xxx\nadress = xxx"

如果我没弄错你的问题,你应该用strtok

  char line[] = "name = xxx\nsurnam =xxx\nadress = xxx";

  char *entry;
  entry = strtok(line, "\n");

  while (entry)
    {
      printf("%s\n", entry);
      entry = strtok(NULL, "\n");
    }

只需将printf替换为代码即可

请提供有关您想对该文件执行什么操作的更多信息。请清楚地解释您在该文件中必须执行的操作?与其再次询问,您或许应该解决您原来的问题:此问题与您第一次尝试时一样不清楚。否。因为我想留下一行:while(fgets(line,sizeof(line),file))我尝试:char file[]=“name=xxx\nsurnam=xxx\nadress=xxx”留下一行是什么意思?您想逐行解析它吗?程序在一个循环中:while(fgets(line,sizeof(line),file)){…}和文件xxx.conf逐行检索数据。我想输入一个变量而不是一个文件。文件[]=“”name=xxx\nsurnam=xxx\nAddress=xxx”