文件的输入 计算行数 恢复头位置
来源:互联网 发布:perl json 格式化输出 编辑:程序博客网 时间:2024/05/17 06:19
http://blog.csdn.net/mafuli007/article/details/7314917
构造二维动态数组 需要注意delete时,要删除两次
输入流,在做过各种操作后 要先close 再clear,因为如果先clear,close时候有可能这个文件本来就不存在,造成falibit状态变成错误。了解seekg的复位功能
了解cout << typeid(d).name() << endl;可检测变量的类型
http://blog.csdn.net/mafuli007/article/details/7314917
int main()
{
ifstream infile;
infile.open("test.txt");
int word_nums=0;
int line_num=0;
if (!infile)
{
cerr<<"can't open file: "<<infile<<endl;
}
string str;
while(!infile.eof())
{
getline(infile,str);
remove(str.begin(),str.end(),' ');//不考虑每行的空格 制表符 \n
remove(str.begin(), str.end(), '\t');
if (str.length()>0)
{
++line_num;
}
}
cout<<line_num<<endl;
infile.seekg(0,ios::beg);
int word;
while(infile>>word)
{
++word_nums;
}
cout<<word_nums<<endl;
int *p=new int[word_nums];
//
// infile.close();
infile.clear();
// infile.open("test.txt");
infile.seekg(0,ios::beg); ///这个问题!!!!!!!!!但为什么这样不行呢?
//感觉应该是由于 第一个seekg造成了 failbit状态。。 因为seekg是读取二进制文件的?
for (int i=0;i!=word_nums;++i)
{
infile>>p[i];
}
cout<<endl;
for (int i=0;i!=word_nums;++i)
{
cout<<p[i]<<" ";
}
delete[] p;
infile.close();
infile.clear();
return 0;
}
- 文件的输入 计算行数 恢复头位置
- 计算文件的行数.
- 计算某一个文件的行数
- JAVA作业——输入指定文件,计算代码行数
- python计算文件的行数的方法
- c++计算一个TXT文件的行数
- linux驱动头文件位置和头文件的说明 .
- linux errno的定义头文件位置
- Linux:关于头文件的位置
- 引入头文件的位置顺序
- linux驱动头文件位置的说明
- linux驱动头文件位置的说明
- linux驱动头文件位置的说明
- linux中头文件的位置
- linux驱动头文件位置的说明
- linux驱动头文件位置的说明
- linux驱动头文件位置的说明
- linux驱动头文件位置的说明
- Math中的round/ceil/floorf方法总结
- sshj项目中部署流程定义时应该注意的问题
- struts2返回JSON数据的具体应用范例
- 清理数据库日志(log)文件
- [LeetCode]Best Time to Buy and Sell Stock III
- 文件的输入 计算行数 恢复头位置
- Android中使用广播机制退出多个Activity
- 统计所有'单词'出现的次数
- [LeetCode]Binary Tree Inorder Traversal
- 设置时钟
- 大数据:查找不重复的整数
- MongoDB中修改集合中的某个元素的值
- cygwin安装 hbase 报错:ClassNotFoundException: org.apache.zookeeper.KeeperException
- [LeetCode]Binary Tree Level Order Traversal