工具:去除文件的行号
2015-09-07 23:40
246 查看
前言
在CSDN等网站上我们复制了代码总会遇到这样的情况,前面加了一个行号及一个点。 处理方法是有,在编辑器里面按住alt然后拖动就能够删除行号及那个点了,然而,我们也可以自己***工具去删除那个行号和那个点
方法思路
把复制的代码放进记事本里面,然后它里面每行前几个都是行号加代码,利用文件读取,读取每行进字符串里面,然后再查找每行,找到.的位置对字符串进行相应处理然后再写进文件即可
附上相关代码
我是把需要去除行号的文本放在d盘下,其名称为 文件.txt
#include <iostream> #include <fstream> #include <string> #define len 100 using namespace std; struct file{ char s[len];//这个结构里面存储每行的字符串 int value; //存储行号 }F[1000]; void CutLine(struct file *F,int count){//去除行号 for(int i=1;i<count;i++){ for(int j=0;j<100;j++){ if(F[i].s[j]=='.'){ //找到.的位置然后将字符串覆盖掉 for(int k=j+1;k<100;k++){ F[i].s[k-(j+1)] =F[i].s[k]; } } } } fstream f1("d:\\文件.txt",ios::out); if(!f1) cout<<"mistake"; for(i=1;i<count;i++){ f1<<F[i].s<<endl; } f1.close(); } void AddLine(struct file *F,int count){//加上行号和.(只要主函数里面打开的是没有行号和点的文件即可) fstream f("d:\\添加行号的文件文件.txt",ios::out); for(int i=1;i<count;i++){ f<<F[i].value<<". "<<F[i].s<<endl; } f.close(); } int main() { int count=1; //下面代码会把文件每行内容读入内存 fstream f("d:\\文件.txt",ios::in |ios::out); if(!f){cout<<"mistake";} while(!f.eof()){ f.getline(F[count].s,len); F[count].value=count; count++; } f.close(); CutLine(F,count);//去除行号 return 0; }
附上程序运行结果截图:
运行前:
运行后:
相关文章推荐
- 在VC中集成cURL
- CSS样式规范
- 数据结构之链表实现
- c++ iterator(迭代器)分类及其使用
- 工作中遇到的SQL( 满足连续状态要求 )
- 零基础学python-12.3 for循环
- 零基础学python-12.3 for循环
- Hadoop压缩类型
- vim&find&bash&
- 学习《算法导论》第十一章 散列表 总结一
- eclipse安装egit上传和clone项目到github
- js如何实现java中list的那些功能
- MDT 2013 从入门到精通之SQL New MDT Database
- MDT 2013 从入门到精通之SQL New MDT Database
- 教你如何做个坏人----指令广播骚扰
- Linux文件系统上的特殊权限
- uva 548 tree
- 遍历Map的四种方法
- 学习Qt5(4)
- SVN 使用