资源简介
用qt 实现删除文本文件中一行,deleteonelineinfile(int nNumLine, QString & filename);输入文件名和删除的行号可以删除。行号是0到行数减一。
代码片段和文件信息
#include
#include
#include
#include
#include
#include
//如果是5行,nNum最大为4
void DeleteOneline(int nNum QString &strall)//
{
int nLine=0;
int Index=0;
//算出行数nLine
while(Index!=-1)
{
Index=strall.indexOf(‘\n‘Index+1);
nLine++;
}
//如果是直接从位置0开始删除\n算一个字符“abc\nme\ndo“ \n的index是3要删除3+1个字符,即index+1个
if(nNum==0)
{
int nIndex=strall.indexOf(‘\n‘);
strall.remove(0nIndex+1);
}
else
{
int nTemp=nNum;
int nIndex=0nIndex2=0;
while(nTemp--)
{
//
nIndex=strall.indexOf(‘\n‘nIndex+1);//这里会更新nIndex
if(nIndex!=-1)//说明是有效的
{
nIndex2=strall.indexOf(‘\n‘nIndex+1);
}
}
//删除的行不是最后一行(从nIndex+1这个位置起nIndex2-nIndex个字符全部抹去)
if(nNum {
strall.remove(nIndex+1 nIndex2-nIndex);//不用减一
}
//删除的是最后一行(从nIndex起始len-nIndex个字符全抹去)
//不能从nIndex+1处开始,
else if(nNum==nLine-1)
{
int len=strall.length();
strall.remove(nIndexlen-nIndex);
}
else
{
}
}
}
void deleteOnelineInFile(int nNumLine QString &filename)
{
QString strall;
QFile readfile(filename);
if(readfile.open(QIODevice::ReadOnly))
{
QTextStream stream(&readfile);
strall=stream.readAll();
}
readfile.close();
DeleteOneline(nNumLine strall);
QFile writefile(filename);
if(writefile.open(QIODevice::WriteOnly))
{
QTextStream wrtstream(&writefile);
wrtstream< }
writefile.close();
}
int main(int argc char *argv[])
{
QCoreApplication a(argc argv);
//QFile file(“c:\\delline.txt“);
deleteOnelineInFile(3QString(“c:\\delline.txt“));
return a.exec();
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 321 2012-06-05 14:40 DeleteOnelineInfile.pro
文件 18905 2012-06-05 17:15 DeleteOnelineInfile.pro.user
文件 6958 2012-06-05 14:42 Makefile
文件 5546 2012-06-05 14:42 Makefile.Debug
文件 5521 2012-06-05 14:42 Makefile.Release
目录 0 2012-06-05 17:33 debug\
文件 26112 2012-06-05 17:33 debug\DeleteOnelineInfile.exe
文件 311188 2012-06-05 17:33 debug\DeleteOnelineInfile.ilk
文件 878 2012-06-05 17:33 debug\DeleteOnelineInfile.intermediate.manifest
文件 617472 2012-06-05 17:33 debug\DeleteOnelineInfile.pdb
文件 46095 2012-06-05 17:33 debug\main.obj
文件 2105 2012-06-05 17:43 main.cpp
目录 0 2012-06-05 17:45 release\
文件 446464 2012-06-05 17:33 vc90.pdb
相关资源
- QT自绘开关按钮
- Qt版的Rtsp客户端 源代码
- 简单的数据库查询系统窗口实现
- QT实现的自定义窗口框架
- Qt5.6简体中文翻译文件
- Qt5.9Creator自定义信号(SignalTest)
- MQTT_STM32_W5500
- Qt5.8 打开指定路径txt文件 读写TXT文件
- 用QT设计的一个计算器
- QT+release
- N皇后_Qt图形界面_
- QT日历程序
- qt 故障树 带画图功能
- QT绘制简单OpenGL图形
- Qt静态编译的设置过程Qt5.1.0
- QT4 QCA 加密库
- v4l2 qt实时显示摄像头数据未使用ope
- zigbee的串口编程应用源代码
- QT+opencv边缘检测,轮廓提取及轮廓跟
- QT+opencv图像增强,包括高斯平滑,中
- qt 串口通讯发送和接收都有
- QT5 下 usb 设备插拔检测
- QWebChannel
- Qt双滑块滑动器(slider)控件
- QT 源码 圆形时钟
- 基于QT+Linux的网络聊天室
- QGraphicsView Draw
- QT-玛丽奥医生的源代码
- QT画坐标系折线图
- MainWindow和Dialog通过信号和槽通信
评论
共有 条评论