1

データを CSV ファイルにエクスポートする小さなアプリケーションを作成しています。そして、これは私が使用したコードです

QString fileName = QFileDialog::getSaveFileName(
    this,
    tr("Save As"),
    "",
    tr("Comma Separated Values (*.csv);;All Files (*.*)"));

if (fileName.isEmpty()) return;
else {
    QFile file(fileName);
    if (!file.open(QIODevice::WriteOnly)) {
        QMessageBox::information(this, tr("Unable to open file"), file.errorString());
        return;
    }

    // Write content to *.csv file
    QTextStream stream(&file);

    // Print header
    stream << "ID\tUsername\tAddress";

    stream.flush();
    file.close();
}

次に、アプリケーションを実行すると、CSV ファイルを保存するためのダイアログが表示されます。しかし、保存したばかりのCSVファイルを開くと、次の2つのエラー警告が表示されました

CSV ファイルをエクスポートできません

CSV ファイルをエクスポートできません

これはCSVファイルのデータです

CSVファイルのデータ

ご覧のとおり、 IDUsernameAddressなどの 3 つのフィールドを 3 つの列に表示するつもりですが、すべてのデータが 1 つの列にあります。

上記の 2 つのメッセージが表示された理由と、各列に各フィールド (ID、ユーザー名、アドレス) を表示する方法を教えてください。

前もって感謝します!

P/S:現在、Microsoft Excel 2013 を使用しています。

4

1 に答える 1

2

CSV は Comma-separated Values の略です。

 // Print header
stream << "ID\tUsername\tAddress";

TAB列を区切るために文字を使用しています。代わりにコンマを使用してみてください。

\n編集: また、各行の最後に改行文字が必要です。

于 2013-10-01T17:31:45.613 に答える