我正在使用QScintilla的对象,并且我正在逐步读取QScintilla对象中的文件。QScintilla对象中的增量加载
页眉myEditor.h
class myScintilla: public QScintilla {
public readFile();
};
#include "myEditor.h"
void myEditor::readFile() {
if (FILE* fp = fopen(ofilename.toLatin1(), "r")) {
QTextStream ts(fp, QIODevice::ReadOnly);
int bufferSize =(1024* 1024)/2;
do {
QString s = ts.read(bufferSize);
append(s);
} while(!ts.atEnd());
}
即使这种变化后仍会有性能问题,同时读取大型文件。花费大约
1)25秒读取大小为1.5 GB的文件。 (机器核心4,16 GB RAM) 2文件的大小为512MB(在同一台机器上)的10秒
有没有什么办法可以根据滚动条的移动递增地加载QScintilla对象中的文件?
据我所知,我使用了QScintillaBase类的对象,并且在这个对象的内部,我应该使用最终答案的所有1,2,3步骤。由于我对QScintillaBase,QScintilla非常陌生,如果你能指出我使用上述方法的示例示例,就像你在最终答案 – TechEnthusiast
中提到的那样,我今天才知道QScintilla/Scintilla!我知道甚至比你还少。我只是说,如果你尝试我的建议,看起来可能。 – cheez