【发布时间】:2011-08-05 07:28:03
【问题描述】:
我有大小在 1mb - 150 mb 之间的数字文本数据行,我需要编写与高度相关的数字行,例如:heights=4,新文本必须包含行:1、5、9、13、 17,21.... 因此。
我一直在尝试找到一种方法来执行此操作,尝试使用列表而不是向量,但最终出现编译错误。
我已按照建议清理了代码。它现在写入所有行 sample2 文本,都在此处完成。谢谢大家
只要能满足我的需要,我愿意改变方法,感谢您的时间和帮助。
以下是我目前所拥有的:
#include <iostream>
#include <fstream>
#include <string>
#include <list>
#include <vector>
using namespace std;
int h,n,m;
int c=1;
int main () {
cout<< "Enter Number Of Heights: ";
cin>>h;
ifstream myfile_in ("C:\\sample.txt");
ofstream myfile_out ("C:\\sample2.txt");
string line;
std::string str;
vector <string> v;
if (myfile_in.is_open()) {
myfile_in >> noskipws;
int i=0;
int j=0;
while (std::getline(myfile_in, line)) {
v.push_back( line );
++n;
if (n-1==i) {
myfile_out<<v[i]<<endl;
i=i+h;
++j;
}
}
cout<<"Number of lines in text file: "<<n<<endl;
}
else cout << "Unable to open file(s) ";
cout<< "Reaching here, Writing one line"<<endl;
system("PAUSE");
return 0;
}
【问题讨论】:
-
“恒定高度增加” ???请改写您的问题。目前无法理解
标签: c++ string list sorting text