使用'/ n'从文本文件读取

万圣节

好的。因此,我正在从文本文件中读取文本并将其存储到char数组中,这按预期工作。但是,文本文件包含许多换行符转义序列。然后的问题是,当我用存储的文本打印出字符串数组时,它会忽略这些换行符序列,而只是将它们打印为“ \ n”。

这是我的代码:

char *strings[100];

void readAndStore(FILE *file) {
  int count = 0;
  char buffer[250];

  while(!feof(file)) {
    char *readLine = fgets(buffer, sizeof(buffer), file);
    if(readLine) {
      strings[count] = malloc(sizeof(buffer));
      strcpy(strings[count], buffer);
      ++count;
    }

  }
}

int main() {

  FILE *file1 = fopen("txts", "r");
  readAndStore(&*file1);
  printf("%s\n", strings[0]);
  printf("%s\n", strings[1]);
  return 0;
}

输出结果如下所示:

\ n这里有很多文字\ n应该在换行符上显示更多文字,但不是\ n等等\ n和\ n

有什么方法可以让它读取“ \ n”作为实际的换行符转义序列,还是我只需要从文本文件中删除它们并找出其他方法来隔开文本?

斯蒂法诺·桑菲利波(Stefano Sanfilippo)

事实是这样,\n对于您的编译器来说,这是一个特殊的转义序列,它将其转换为具有ASCII码的单个字符文字,即“ LF”(换行,返回)0x0A因此,正是编译器赋予了该序列特殊的含义。

相反,从文件\n读取时,将被读取为两个不同的字符ASCII码0x5c,0x6e

您将需要编写一个例程,将所有出现的\\n(由字符\和n组成的字符串,必须使用两次转义以告诉编译器不要将其解释为转义序列)替换为\n(单个转义序列,这意味着换行) )。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Javascript读取文本文件

来自分类Dev

使用IAsyncEnumerable读取文本文件

来自分类Dev

使用fscanf()从文本文件读取

来自分类Dev

读取文本文件-使用Swift

来自分类Dev

使用python读取文本文件

来自分类Dev

使用Powershell读取文本文件并查找文本

来自分类Dev

使用pl / sql从文本文件读取文件

来自分类Dev

使用numpy从文本文件中读取文件

来自分类Dev

从C中的文本文件读取前N行

来自分类Dev

如何读取已在使用的文本文件(Windows C ++)

来自分类Dev

如何使用熊猫读取文本文件的键,值对?

来自分类Dev

在Swift中使用NSURL读取文本文件

来自分类Dev

使用Swift读取文本文件的Python方法

来自分类Dev

使用PHP读取部分文本文件

来自分类Dev

使用Javascript读取本地文本文件

来自分类Dev

使用Boost mmap读取文本文件

来自分类Dev

使用循环JAVA读取文本文件

来自分类Dev

使用C#从文本文件读取

来自分类Dev

使用JavaCC从文本文件读取输入

来自分类Dev

使用正确的colClasses读取文本文件

来自分类Dev

如何使用python读取文本文件中的数字?

来自分类Dev

从文本文件读取,而不必使用readline()

来自分类Dev

使用scanf重新读取c中的文本文件

来自分类Dev

使用HashSet存储文本文件并从中读取

来自分类Dev

如何使用scala.js读取文本文件?

来自分类Dev

使用JS从文本文件读取变量

来自分类Dev

使用python读取文本文件数据

来自分类Dev

使用fscanf在C中逐行读取文本文件

来自分类Dev

如何使用PySpark读取文本文件并应用架构?