Windows下对于Qt中带 / 的路径的处理

在Windows下,如果你想使用操作系统的分隔符显示用户的路径,请使用 toNativeSeparators()。

请看以下代码:

cpp 复制代码
void Player::on_playBtn_clicked() {
	if (this->m_url.isEmpty()) {
		openMedia();
		if (this->m_url.isEmpty())return;
	}
	qDebug()<< m_url.toUtf8();
	if (!vlc_player) {
		auto media = libvlc_media_new_path(this->vlc_ins, 
			m_url.toUtf8());
		if (!media) {
			qWarning("media new failed: % s", libvlc_errmsg());
			return;
		}
		this->vlc_player = libvlc_media_player_new_from_media(media);
		if (!vlc_player) {
			qWarning("vlc_player new failed: % s", libvlc_errmsg());
			return;
		}
		libvlc_media_release(media);
	}
	libvlc_media_player_set_hwnd(vlc_player, (void*)ui->videoWidget->winId());
	libvlc_media_player_play(this->vlc_player);
}

打印输出:

"E:/Res/VideoRes/output.mp4"
media new failed: Unknown error

这个问题在于路径方面存在 / ,要解决这个问题就要使用QDir里面的一个静态成员函数:toNativeSeparators。

问题解决。

相关推荐
FACELESS VOID11 分钟前
wsl下使用npm,错误识别到了windows下的npm
linux·windows·npm
星间都市山脉44 分钟前
RecoveryUI 圆角屏安全边距配置及代码调用链
android·java·linux·windows·ubuntu
艾莉丝努力练剑1 小时前
【QT】系统相关:多线程QThread基础
开发语言·网络·c++·qt·学习·大模型
泡海椒1 小时前
JQuick-Excel JQuickRow 数据准备实战:JObjectConverter、JQuickRow.toRows 与 XML 导出链路
xml·windows·excel
王维同学1 小时前
ETW监控-KswordARK功能展示
c++·windows·安全
呉師傅15 小时前
得力P2500、M2500系列打印机硒鼓加粉及清零方法【纯享版】
运维·网络·windows·电脑
xcyxiner15 小时前
DicomViewer24 修复编译bug(window test 失败)
前端·qt
ZhangJun9516 小时前
从零写一个类鲁大师的硬件检测小工具,软件附上,可直接使用
windows·测试工具·电脑·笔记本电脑·硬件架构
imperialeast18 小时前
创建WAV文件 韩文、德文、俄文等unicode音乐标签
windows·小程序
易点云徐源18 小时前
社保费管理客户端打开后进度条卡20%,等待1分钟提示获取接收配置失败
windows