Qt读取文件名称,只输出.前面的内容,不带类型
时间: 2023-08-09 10:09:32 浏览: 47
可以使用QFileInfo类获取文件名,并使用QString类的split方法以点号为分隔符分割字符串,然后取第一个元素即可。示例代码如下:
```c++
#include <QFileInfo>
#include <QStringList>
QString fileName = "/path/to/file.txt";
QFileInfo fileInfo(fileName);
QStringList nameSplit = fileInfo.fileName().split(".");
QString nameWithoutExtension = nameSplit.at(0);
```
其中,`fileName`是文件的完整路径,`fileInfo`是QFileInfo对象,`nameSplit`是文件名按点号分隔后的字符串列表,`nameWithoutExtension`是第一个元素,即不带类型的文件名。
相关问题
QT读取文件中内容并输出
可以使用 QFile 和 QTextStream 类来读取文件内容并输出。
以下是一个简单的示例代码:
```cpp
#include <QFile>
#include <QTextStream>
#include <QDebug>
int main()
{
QFile file("filename.txt");
if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
return 1;
QTextStream in(&file);
QString line = in.readLine();
while (!line.isNull())
{
qDebug() << line;
line = in.readLine();
}
file.close();
return 0;
}
```
其中,QFile 类用于打开文件,QTextStream 类用于读取文件内容并输出。在这个示例中,我们打开了一个名为 "filename.txt" 的文件,并使用 QTextStream 逐行读取文件内容,并将每行内容输出到控制台上。最后,我们关闭了文件。
可以根据需要进行修改,例如更改文件名、更改输出方式等等。
Qt 读取.bin文件并输出
你可以使用 QFile 类来读取二进制文件,然后使用 QTextStream 或 QByteArray 类来处理文件内容。以下是一个简单的示例代码:
```cpp
#include <QFile>
#include <QTextStream>
int main()
{
QFile file("yourfile.bin");
if (!file.open(QIODevice::ReadOnly))
return -1;
QTextStream in(&file);
QString content = in.readAll();
file.close();
qDebug() << content;
return 0;
}
```
在上面的代码中,我们首先打开一个二进制文件,然后使用 QTextStream 读取文件内容并将其存储在一个字符串中。最后,我们将字符串输出到控制台。
如果你想直接使用 QByteArray 类处理二进制文件,可以使用以下代码:
```cpp
#include <QFile>
#include <QByteArray>
int main()
{
QFile file("yourfile.bin");
if (!file.open(QIODevice::ReadOnly))
return -1;
QByteArray content = file.readAll();
file.close();
qDebug() << content;
return 0;
}
```
在上面的代码中,我们使用 QByteArray 类直接读取文件内容,并将其存储在一个 QByteArray 对象中。最后,我们将 QByteArray 输出到控制台。