#include #include #include #include "leftwidget.h" const QString sampleDataFloder = QDir::currentPath()+"/../experiment_data/sample_data"; const QString baseLineFolder = QDir::currentPath()+"/../experiment_data/base_line"; const QString analysisStateFolder = QDir::currentPath()+"/../experiment_data/analysis_state"; LeftWidget::LeftWidget() { // setStyleSheet("background-color: yellow;"); _treeWidget = new QTreeWidget(); _treeWidget->setHeaderHidden(true); _analysisStateItem = new QTreeWidgetItem(_treeWidget); _analysisStateItem->setText(0,"分析状态"); _baseLineItem = new QTreeWidgetItem(_treeWidget); _baseLineItem->setText(0,"基线"); _sampleDataItem = new QTreeWidgetItem(_treeWidget); _sampleDataItem->setText(0,"样品数据"); _treeWidget->setSortingEnabled(false); // _treeWidget->insertTopLevelItem(0,_sampleDataItem); // _treeWidget->insertTopLevelItem(1,_baseLineItem); // _treeWidget->insertTopLevelItem(2,_analysisStateItem); _treeWidget->addTopLevelItem(_sampleDataItem); _treeWidget->addTopLevelItem(_baseLineItem); _treeWidget->addTopLevelItem(_analysisStateItem); #if 0 qDebug()<<"current path:"<setText(0,fileName); // _sampleDataItem->addChild(new QTreeWidgetItem(0,fileName)); parentItem->addChild(subItem); } #if 0 // 获取文件夹中的所有文件名 QStringList files = dir.entryList(QDir::Files); // 只列出文件 qDebug() << "Files in the current directory:"; foreach (const QString &fileName, files) { qDebug() << fileName; } #endif } void LeftWidget::expandAll(QTreeWidgetItem* item) { item->setExpanded(true); for (int i = 0; i < item->childCount(); ++i) { expandAll(item->child(i)); } } #if 0 void LeftWidget::recursiveFolderOperation(const QString& folderPath) { QDir dir(folderPath); if (!dir.exists()) { qWarning() << "文件夹不存在: " << folderPath; return; } // 遍历文件 QFileInfoList fileList = dir.entryInfoList(QDir::Files | QDir::NoDotAndDotDot); for (const QFileInfo& fileInfo : fileList) { QFile file(fileInfo.absoluteFilePath()); if (file.open(QIODevice::ReadOnly | QIODevice::Text)) { QString content = file.readAll(); qDebug() << "读取文件 " << fileInfo.absoluteFilePath() << " 内容: " << content; file.close(); // 写入文件操作示例:这里简单在文件末尾追加一行内容 if (file.open(QIODevice::Append | QIODevice::Text)) { file.write("\n这是通过递归写入添加的内容"); qDebug() << "已向文件 " << fileInfo.absoluteFilePath() << " 写入内容"; file.close(); } else { qWarning() << "无法打开文件进行写入: " << fileInfo.absoluteFilePath(); } } else { qWarning() << "无法打开文件进行读取: " << fileInfo.absoluteFilePath(); } } // 递归遍历子文件夹 QFileInfoList subDirList = dir.entryInfoList(QDir::Dirs | QDir::NoDotAndDotDot); for (const QFileInfo& subDirInfo : subDirList) { recursiveFolderOperation(subDirInfo.absoluteFilePath()); } } #endif