Qt选择文件后获取路径并打开
qt菜鸟记录贴
包含头文件:
#include <QFile>
#include <QFileDialog>
代码:
//点击按钮后打开文件选择
void MainWindow::on_pushButton_clicked()
{//打开文件选择控件QString fileName;fileName = QFileDialog::getOpenFileName(this,tr("文件"),"",tr("text(*.txt)"));//打开选择的txt文件并显示QFile file(fileName);file.open(QIODevice::ReadOnly | QIODevice::Text);QByteArray t = file.readAll();ui->Output->setText(QString(t));file.close();
}
效果:
点击前:
点击后:
文件输出:
发现中文乱码,解决方案:
在默认情况下,Qt 以 Unicode 格式处理文本字符,因此,字符本身是不会有问题的。之所以出现乱码,原因在于 Qt 不知道将 Unicode 字符以何种方式显示出来。
加入头文件:#include <QTextCodec>
选择转换格式为GBK:QTextCodec *codec=QTextCodec::codecForName("GBK");
转换字符:QString str = codec->toUnicode((t)); //为输入字符串
最终代码:
//点击按钮后打开文件选择
void MainWindow::on_pushButton_clicked()
{//打开文件选择控件QString fileName;fileName = QFileDialog::getOpenFileName(this,tr("文件"),"",tr("text(*.txt)"));//打开选择的txt文件并显示QFile file(fileName);//GBK方式QTextCodec *codec=QTextCodec::codecForName("GBK");file.open(QIODevice::ReadOnly | QIODevice::Text);QByteArray t = file.readAll();//转换读取数据并显示QString str = codec->toUnicode((t));ui->FileOutput->setText(QString(str));file.close();
}
Qt选择文件后获取路径并打开相关推荐
- Qt选择文件对话框-中文路径-转std::string
#include <QFileDialog> #pragma execution_character_set("utf-8") QString path = QFile ...
- 【Y忍冬草】获取路径、打开文件图像等
QT:获取路径.打开文件/图像等 1. 获取路径 #include <QFileDialog> #include <QMessageBox>//---------------- ...
- jq监听input type=file发生改变,即选择文件,并获取文件名称
jq监听input type="file"发生改变,即选择文件,并获取文件名称 <input id="fileupload" name="fil ...
- input type=file 获取选择文件名称、路径方法及input上传按钮美化
获取文件名 document.getElementById('upload').files[0].name; 获取文件路径 document.getElementById('upload').valu ...
- QT 选择文件,另存为文件组件
1. ChildFile.h #ifndef CHILDFILE_H #define CHILDFILE_H#include <QWidget> //#include <QtCor ...
- Excel VBA选择文件、高容错性地打开文件
VBA选择文件 Sub SelectFile() Dim FileName As Variant '打开文件对话框返回的文件名,是一个全路径文件名,其值也可能是False,因此类型为Variant D ...
- QT的文件过滤器qt选择文件时候的文件过滤
FilePath = QFileDialog::getOpenFileName(this,tr("Open Binary File"),".",tr(" ...
- qt保存文件的默认路径_Qt将文件保存到指定目录下(另存为的功能)
因为Qt才开始入门.对文件的操作还不是很熟练.经过一段时间查找终于找出一些适用于入门的代码. QDir d; d.mkpath("D:/123"); file = new QFil ...
- python获取路径下所有文件_Python获取路径下所有文件名
交易系统使用storm,在消息高可靠情况下,如何避免消息重复 概要:在使用storm分布式计算框架进行数据处理时,如何保证进入storm的消息的一定会被处理,且不会被重复处理.这个时候仅仅开启stor ...
最新文章
- Rstudio连接spark失败
- 汇编: 描述内存长度
- LED适用范围及寿命
- egg前面加什么_国威说阀:阀门前面为什么加国标美标日标之类的?
- mysql数据库设计与应用答案智慧树_智慧树_MySQL数据库设计与应用_完整免费答案...
- 【Makefile由浅入深完全学习记录4】变量和不同的赋值方式
- 使用Exchange反垃圾邮件组件解决内部仿冒邮件
- 【第2波】有些话,适合在朋友圈说
- IDEA两步删除版本控制
- 第 10 章 桥接模式
- mysql 将 字符 转换成 数字
- checkbox大小缩放
- Android MultiPart图像上传进度改造NodeJS
- C++ 从零单排(2)-基础知识二
- 概率图模型(PGM)学习笔记(一)动机与概述
- 古墓新手机器人_古墓新手任务攻略 - 玩家乐园 - 北大侠客行MUD论坛 - Powered by Discuz!...
- 卷积神经网络基础知识
- 2019税改有哪些变化?什么是专项扣除?这些改动与你的工资息息相关!
- 今天碰到的一件盗QQ诈骗案
- appium 配置 打开应用闪退
热门文章
- 1.2 nuclei sdk gd32vf03 启动文件分析
- Python学习初级编程实例(一)
- 每天穿女装上班的大厂程序员:我知道自己是个男生
- WebVirMgr的搭建过程
- C++:输入在一行中给出正方形边长N(3≤N≤21)和组成正方形边的某种字符C,间隔一个空格。(跟奥巴马一起画方块)
- Hyper-V应用指南---导入导出虚拟机
- 在微型计算机内存储器中,不能用指令修改其存储内容的部分是,青书学堂: (单选题) 在微型计算机内存储器中,不能用指令修改其存储内容的部分是( )。...
- zabbix监控服务器
- (VGG)VERY DEEP CONVOLUTIONAL NETWORKS FOR LARGE-SCALE IMAGE RECOGNITION
- namp 渗透测试-安装篇