我有一个制表符分隔的文本文件,我正在解析.其第一列包含格式的字符串chrX,其中X表示一组字符串,例如"1","2",......,"X","Y".
这些都存储在char*被调用chromosome的文件中.
文本文件按字典顺序排在第一列,即,我将有一些以"chr1"开头的行,然后是"chr2"等.
在每个"chrX"条目中,我需要打开与此条目关联的另一个文件:
FILE *merbaseIn;
// loop through rows...
if (chromosome == NULL)
openSourceFile(&chromosome, fieldArray[i], &merbaseIn, GENPATHIN);
else {
if (strcmp(chromosome, fieldArray[i]) != 0) { // new chromosome
fclose(merbaseIn); // close old chromosome FILE ptr
free(chromosome); // free old chromosome ptr
openSourceFile(&chromosome, fieldArray[i], &merbaseIn, GENPATHIN); // set up new chromosome FILE ptr
}
}
// parse row
Run Code Online (Sandbox Code Playgroud)
我有一个openSourceFile定义如下的函数:
void openSourceFile (char** chrome, const char* field, FILE** filePtr, const char …Run Code Online (Sandbox Code Playgroud)