【问题标题】:How to remove a column from a data file in C如何从C中的数据文件中删除列
【发布时间】:2012-09-07 04:58:12
【问题描述】:

我正在尝试从数据集中删除一列。我的文件如下所示。我怎样才能做到这一点?

输入-

1,2,3,4
2,3,4,5
3,4,5,6

输出-

2,3
3,4
4,5

【问题讨论】:

  • 到目前为止你尝试过什么? (顺便说一句,这不是一个数据集;它是一个 CSV(逗号分隔值)文本文件。)
  • 查看libcsv

标签: c file format dataset


【解决方案1】:

没有快速的方法 - 您最终将“标记”文件的每一行,然后只编写您想要的部分。

如果您知道每行包含固定数量的整数(例如,4,如您的示例),并且您需要从中“删除”几列(例如,第 2 列和第 3 列),请在一个循环:

int a,b;
fscanf(inFile, "%*d,%d,%d,%*s", &a, &b);
fprintf(outFile, "%d,%d\n", a, b);

当然,您需要在开始循环之前打开文件,完成后关闭,并在循环条件下测试输入文件的结尾。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-04-13
    • 1970-01-01
    • 1970-01-01
    • 2020-06-16
    • 1970-01-01
    • 2015-10-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多