读取包含选项卡的文件

Reading A File including tabs

本文关键字:文件 选项 包含 读取      更新时间:2023-10-16

我有一个包含23行的文件。在每一行中,有六个不同的字符串,这些字符串通过t(制表符)彼此分开。换句话说,我有一个制表符分隔的文件。

1)是否可以通过fscanf的读取来读取这个文件?

如果不可能,我如何读取文件?

您可以使用sscanf函数:

 char string1[SIZE];
 char string2[SIZE];
 char string3[SIZE];
 char string4[SIZE];
 char string5[SIZE];
 char string6[SIZE];
 char line[200];
  FILE *inFile;
  char *inName = "myFile.txt";
  int i = 0;

  inFile = fopen(inName, "r");
  if (!inFile) {
    printf("Couldn't open %s for readingn");
    return 0;
  }
  while(i < 23 && fgets(line, sizeof(line), inFile) != NULL){
        sscanf( line, "%[^t]t%[^t]t%[^t]t%[^t]t%[^t]t%[^n]n", string1, string2, string3, string4, string5, string6 );
        printf( "%st%st%st%st%st%sn", string1, string2, string3, string4, string5, string6 );
        i++;
 }