qt中怎样将lineEdit的内容写入文件并保存

我要在lineEdit内输入号码,然后点击边上的pushbutton使号码存入文件,在点击发送button时再读出文件中的号码。下面这段是我写的,保存不进去:QStrin... 我要在lineEdit内输入号码,然后点击边上的pushbutton使号码存入文件,在点击发送button时再读出文件中的号码。下面这段是我写的,保存不进去:
QString filename=QFileDialog::getSaveFileName(this,tr("写入文件"),0,tr("保存为 (*.*)"));
QFile file(filename);
QTextStream out(&file);
out<<ui->lineEdit->textEdited();
file.close();
setWindowTitle("saved:"+QFileInfo(filename).canonicaa
展开
 我来答
winland0704
推荐于2016-09-08 · TA获得超过1075个赞
知道小有建树答主
回答量:715
采纳率:0%
帮助的人:832万
展开全部
长了脑子是要用的。
打开QtCreator的帮助页面,找到
Qt Reference Documentation ---》Classes--》QLineEdit Class Reference
看到QLineEdit的帮助文档,

Signals
void cursorPositionChanged ( int old, int new )
void editingFinished ()
void returnPressed ()
void selectionChanged ()
void textChanged ( const QString & text )
void textEdited ( const QString & text )

textEdited()是一个信号,不是函数,不能干任何事,这是用于触发其他槽函数的。
获取文本的函数:
Public Functions
QString text () const

获取文本用lineEdit->text() ;
这么简单都不用脑子?

Access functions:访问文本的函数
QString text () const
void setText ( const QString & )

Notifier signal:通知信号
void textChanged ( const QString & text )
追问
那就把outlineEdit->textEdited();改为:outlineEdit->text();就好了?
我改过之后还是不行,改为outlineEdit->text().toAscii();和outlineEdit->text().data;都不行
追答
还是不用脑子。
lineEdit->text() 这个函数获取文本绝对没问题的,
你不行就打印到命令行看看,获取的文本绝对不会错的。
linedit没问题,那不就出在写入文件吗?

去一模一样地查查QFile的文档,里面的傻瓜式代码写的一清二楚:
读文件:
QFile file("in.txt");
if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
return;

QTextStream in(&file);
while (!in.atEnd()) {
QString line = in.readLine();
process_line(line);
}

写文件:
QFile file("out.txt");
if (!file.open(QIODevice::WriteOnly | QIODevice::Text))
return;

QTextStream out(&file);
out << "The magic number is: " << 49 << "\n";

还用我废话?对比一下不就知道你错在哪里了。
大把大把的文档和代码都在帮助文档里,这个都不会去查,跑来瞎问,
下次找不到人你怎么混?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式