dkfr.net
当前位置:首页 >> Qt中怎样读取文件指定的行? >>

Qt中怎样读取文件指定的行?

不知道你要的是不是这种效果,核心代码如下 可以直接私信我获得整个工程

逐行读取 QFile file("/home/administrator/testdir/test.txt"); if(!file.open(QIODevice::ReadOnly | QIODevice::Text)) { qDebug()

很遗憾,要删掉文件中的某一行是不可能的. 但是你可以把文件从那一行以后的内容全部往前移动. 就是要删除一部分内容再重写的意思了.

QFile file("in.txt"); if (!file.open(QIODevice::ReadOnly | QIODevice::Text)) return; QTextStream in(&file); QString line = in.readLine(); 你可以试试

file.open(QIODevice::WriteOnly|QIODevice::Append) 这个是追加写入的意思

ui.tedLog->toPlainText(); QStringList list = ui.tedLog->toPlainText().split("\n"); 再循环取 list写入文件就可以了。

使用QFile类进行文件操作不需要显式获得文件当前游标,使用seek设置当前游标位置,它会自动转移到pos参数所指向的位置,然后直接读写就行了。

用代码来描述的话可以是这样的: QTextCursor cur = edit->textCursor();//返回当前光标对象 cur.setPosition(2, QTextCursor::MoveAnchor);//移到起始位置 cur.movePosition(QTextCursor::NoMove, QTextCursor::keepAnchor, 3);//移动结束位置 ...

法1. QTextCursor tc = fileedit_window->textCursor(); //当前光标 QTextLayout *lay = tc.block().layout(); int curpos = tc.position() - tc.block().position();//当前光标在本BLOCK内的相对位置 int textline = lay->lineForTextPosition(...

网站首页 | 网站地图
All rights reserved Powered by www.dkfr.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com