USB导出功能(QT)

一、检测U盘是否存在

复制代码
void Dialog::checkUSB()
{
    int message = 0;    
//获取U盘的文件,并且显示在ListWidget_USB    
​​​​​​​        usb_path = "";
    // 获取系统中所有驱动器
    QFileInfoList drives = QDir::drives();
    // 遍历驱动器列表
    foreach (const QFileInfo &drive, drives)
    {
        //qDebug() << "Drive: " << drive.absoluteFilePath();

        UINT driveType = GetDriveType((LPCWSTR)drive.absoluteFilePath().utf16());
        if (driveType == DRIVE_REMOVABLE)
        {
            message = 1;
            U=true;
            ushowlist_bz=++ushowlist_bz;
            usb_path =drive.absoluteFilePath();
            qDebug() << "Found removable drive at:" << drive.absoluteFilePath();
            qDebug() << "usb_path:" << usb_path;
            // 创建QDir对象来访问文件夹
            QStringList fileNames_USB;
            QDir dir_usb(usb_path);
            if (dir_usb.exists())
            {
                fileNames_USB = dir_usb.entryList(QDir::Dirs | QDir::NoDotAndDotDot);   //去掉"."和".."
                qDebug() << "ushowlist_bz:" << ushowlist_bz;
                if(ushowlist_bz==1)
                {
                    listWidget_USB->clear();
                    // 将文件名添加到QListWidget中
                    for (const QString &fileName_USB : fileNames_USB)
                    {

                        qDebug()<<"fileNames_USB :"<<fileNames_USB;
                        listWidget_USB->addItem(fileName_USB);
                    }
                }

            }
            else
            {
                qWarning("Folder does not exist: %s", qUtf8Printable(drive.absoluteFilePath()));
            }
       }
    }
    if(message ==0)
    {
        U=false;
        ushowlist_bz=0;
        QString styleSheet = QString("QTextEdit { border-image: url(%1) 0 0 0 0 stretch stretch; }").arg(b);
        ReminderU->setStyleSheet(styleSheet);
        //QMessageBox::information(nullptr, "提示", "未找到U盘,请检查U盘是否正确插入");
    }
}
相关推荐
学逆向的3 分钟前
汇编——寻址方式
开发语言·汇编·网络安全
大模型码小白9 分钟前
企业级检索增强后端集成:Java 服务如何管理知识库版本
java·服务器·开发语言·人工智能·python·microsoft
-银雾鸢尾-13 分钟前
C#中的Dictionary相关方法
开发语言·c#
农村小镇哥18 分钟前
Python3开发快速获取图片的文字
开发语言·python
geovindu24 分钟前
go:Backtracking Algorithm
开发语言·后端·算法·golang·回溯算法
神仙别闹39 分钟前
基于QT(C++)实现Windows 自启动项查看和分析
c++·windows·qt
lzhdim1 小时前
C# 中读取CPU、硬盘和内存温度
开发语言·c#
Irene19911 小时前
Oracle PL/SQL Developer 版本差异(11g、14)实战总结
java·开发语言
qq_448011161 小时前
C语言中的getchar()
c语言·开发语言
肖志-AI全栈1 小时前
JavaScript 快速排序:从 pivot、双指针到分治思想
开发语言·javascript·排序算法