Qt 写入csv文件 并支持中文字符, 代码怎么写
时间: 2024-03-23 10:38:25 浏览: 13
可以使用 Qt 的 QFile 和 QTextStream 类来写入 csv 文件,并且可以通过 QTextCodec 类来支持中文字符编码。以下是一个示例代码:
```cpp
#include <QFile>
#include <QTextStream>
#include <QTextCodec>
void writeCsvFile(const QString& filePath) {
QFile file(filePath);
if (!file.open(QIODevice::WriteOnly | QIODevice::Text)) {
// 文件打开失败
return;
}
// 设置文件编码为 GB18030,支持中文字符
QTextCodec* codec = QTextCodec::codecForName("GB18030");
QTextStream out(&file);
out.setCodec(codec);
// 写入 csv 数据
out << codec->toUnicode("姓名,年龄,性别\n"); // 写入表头
out << codec->toUnicode("张三,25,男\n"); // 写入数据行
out << codec->toUnicode("李四,30,女\n");
file.close();
}
```
以上代码会在指定的文件路径中写入一个 csv 文件,其中包含了表头和两行数据。注意要在文件写入完成后关闭文件。