2015-01-11 115 views
0

我有一个输入文件,每行的内容和长度都不相同。每条线代表一个命令。读取输入txt文件并将其格式化为c

in 
cr foo //create file "foo" 
op foo //open it with index 1 
wr 1 x 60 //write x in index 1("foo") 60 times 
wr 1 y 10 //write y in index 1("foo") 60 times 
sk 1 55  //such and such... 
rd 1 10 
dr 
sv disk0.txt 

in disk0.txt 
op foo 
rd 1 3 
cr foo 
cl 1 
dr 

我已经看过这个答案,但它仍然没有帮助我的问题。 How to read specifically formatted data from a file? 我真的需要如何正确读取输入文件以执行不同的命令。 该命令可能包含整数,或者它主要只有一个字符,我不知道如何处理这个文本!请帮助

+0

你知道什么是可以出现在命令字的最大值是多少? –

回答

3
  1. 使用fgets()来阅读直到行尾。
  2. 请注意,fgets()附带一个新的字符。
  3. 使用strtok()作为分隔符打断标记的行
  4. 相应地使用标记。
  5. 使用strtol()处理整数