//编辑:我发现了自己的错误。我仍然缺少一件事:它没有正确计算线条。如果.txt中的最后一个字符不是'\ n',则它会减少1行。如果我点击它,那就多了2个。怎么了 ?你能帮助我吗?
krol.txt =
2 4
3 7
3 13
2 4
3 1
和main.cpp
#include <iostream>
#include <fstream>
#include <cstdlib>
using namespace std;
int main(){
ofstream outFile;
ifstream fin;
fin.open("krol.txt");
int l=0;
char ch;
while (fin.good()){
fin.get(ch);
if (ch=='\n') l++;
}
cout << l;
fin.close();
fin.open("krol.txt");
int temp[l][2];
int savel=l;
l=0;
int i=0;
while (fin >> (temp[l][i])){
i++;
if(i==2){
i=0; l++;
}
}
outFile.open("save.txt");
for (int i=0, j=0;j<savel;i++){
if (i==2) {
i=0; j++;
}
outFile << temp[j][i];
}
outFile.close();
system("PAUSE");
return 0;
}
答案 0 :(得分:0)
我不是C ++专家,但不应该
fout >> ch;
是
fout << ch;
(修正了Thomas Matthews&#39;评论)