在C中读取txt文件并写入结构
Reading from a txt file and writing to a struct in C
我正试图从txt文件中读取数据,并将其插入到我拥有的结构中。我试过使用fscanf,它可以编译,但当我运行它时会崩溃。我对编码还很陌生,所以如果有任何帮助,我将不胜感激。
数据格式如下
A1 6 30 4
A2 9 11 6
A3 9 30 7
A4 90 11 3
这是我迄今为止拥有的
typedef struct Process
{
char name[3];
int arrivalTime;
int serviceTime;
int priority;
} Process;
int main(){
Process record[MAX];
int i, counter;
FILE *ifp;
ifp = fopen("data.txt","r");
if (ifp == NULL) {
fprintf(stderr, "Can't open input file in.list!n");
exit(1);
}
while (EOF != fscanf(ifp, "%s %d %d %d", &record[i].name, &record[i].arrivalTime,
&record[i].serviceTime, &record[i].priority)){
i++;
counter;
}
fclose(ifp);
int j;
for (j = 0; j < counter; j++) {
printf(record[j].name, &record[j].arrivalTime,
&record[j].serviceTime, &record[j].priority);
}
}
使用初始化了一定大小的缓冲区并从中读取数据。
char buffer[256];
while (EOF != fscanf(ifp, "%[^n]n", buffer)){
sscanf (buffer, "%s %d %d %d", record[i].name, &record[i].arrivalTime ,&record[i].serviceTime, &record[i].priority);
i++;
counter++;
}
打印使用:
for (j = 0; j < counter; j++) {
printf("%s %d %d %d n", record[j].name, record[j].arrivalTime, record[j].serviceTime, record[j].priority);
}
相关文章:
- C++将文本文件中的数据读取到结构数组中
- 调用 C 文件中的"C++"结构
- 结构包含在两个头文件中,这两个文件我都不拥有
- 在头文件和 cpp 文件中使用一次 #pragma 时出现结构重定义错误
- 介子复制/安装头文件到输出目录并保持文件夹结构
- 给定一个C++嵌套的私有结构类型,是否有从文件范围静态函数访问它的策略
- 将内部带有矢量的结构保存/读取到二进制文件中
- 从另一个 cpp 文件更改结构内、映射键内的变量
- 将文本文件解析为树状数据结构
- 如何使用位字段将数据从二进制文件复制到结构中?
- 在树结构.txt文件中搜索节点
- 当结构位于单独的头文件中时'unregistered datatype'在 QML 中出现Q_GADGET错误
- 将文件读入数据结构
- 如何读取没有数组或结构的 3 列文件
- (ODR 使用问题)在不同文件中priority_queue名称相同的结构
- 在.cpp文件之间传递结构声明,而不使用全局头文件
- OSX clang++:用于 cpp 文件中显式实例化模板的体系结构x86_64的未定义符号
- 如何修复函数中的 fstream 文件输入以将正确的信息存储在结构数组中?
- 将结构向量保存到文件中,并从C++文件中读取结构向量
- 如何在结构/文件中搜索名称