【问题标题】:Assign specific data to a variable from a text file [closed]将特定数据分配给文本文件中的变量[关闭]
【发布时间】:2012-11-22 21:38:07
【问题描述】:

似乎在互联网上的任何地方都找不到有关如何使用文本文件中的数字分配变量的示例。 假设我们有一个像这样的文本行

222 333 3242 33231 34123 32321

如果我想将一个变量分配给 34123,我该怎么做?

【问题讨论】:

  • 有点像我一直在做的,但我找不到任何关于它的东西,如果你不想帮助,那么不要发布废话?
  • 那么到目前为止,您在编码方面做了什么。
  • 我的意思是为您的问题编写解决方案。你是否阅读了常见问题解答:stackoverflow.com/faq
  • 天哪,你有那么无聊吗?我正在开发一个程序 atm,我将文本文件中的信息扫描到我的程序中,我只是不知道如何使文本文件中的一些“信息”成为变量。
  • 当我运行程序时,程序只需读取并打印出来,但我只需要在文件中找到某些信息,并且我需要创建一个分配给某些信息的变量在文本文件中,不是吗?

标签: c text-files variable-assignment


【解决方案1】:

您可以使用fscanf

例如/

int main()
{
  int i1, i2, i3, i4, i5, i6;

  FILE *my_stream;
  char my_filename[] = "exciting_numbers.txt";
  my_stream = fopen (my_filename, "r");

  fscanf (my_stream, "%i %i %i %i %i %i", &i1, &i2, &i3, &i4, &i5, &i6);

  fclose (my_stream);
}

如果您不知道要读入多少个整数,那么您可以对循环中的一个整数执行类似的操作,当找到 EOF 时会中断?

【讨论】:

  • 我跟着你,但是如果我想在我的行中的特定列之间添加一些东西怎么办?
  • 这与上面的问题不同?您如何确定不同的列?
  • 好吧,它们都被“空格”分隔,并且有 6 个不同的单词/数字,我只是不知道如何将它们作为变量放入我的程序中
  • 如果你修改你的问题以反映你的实际目标,或者开始一个新的问题,那么我会尝试回答? :) 也许你需要在scanf中使用%s,然后检查它是否是一个数字?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-07
  • 1970-01-01
  • 1970-01-01
  • 2014-02-04
  • 1970-01-01
相关资源
最近更新 更多