Получить текстовые данные из QByteArray

У меня такая проблема: я разрабатываю простую базу данных (PostgreSql). Одна из функций, которую он хранит в столбце (имя столбца: "ascii") - большие текстовые данные (2000 строк), которые считываются из файла (тип данных в таблице - BYTEA). Вот пример кода, куда я вставляю данные:

QFile *asciiFile = new QFile(ui->ascii_lineEdit->text());
    asciiFile->open(QIODevice::ReadOnly);
    QByteArray asciiArray = asciiFile->readAll();
    qDebug() << asciiArray;

    QSqlQuery *sourceQuery = new QSqlQuery();
    sourceQuery->prepare("INSERT INTO source (image, image_material, archive, ascii, about) VALUES (:image, :image_material, :archive, :ascii, :about)");
    sourceQuery->bindValue(":image", graphArray.toBase64());
    sourceQuery->bindValue(":image_material", materialArray.toBase64());
    sourceQuery->bindValue(":archive", archiveArray.toBase64());
    sourceQuery->bindValue(":ascii", asciiArray.toBase64());
    sourceQuery->bindValue(":about", ui->about_textEdit->toPlainText());
    sourceQuery->exec();

Еще раз, тип данных столбца ("ascii"), который хранится, является BYTEA. Сейчас я пытаюсь прочитать эти данные (около 2000 строк), и они также не отображаются. Я пытаюсь этот метод:

QByteArray asciiArray = QSqlQuery query = connector->getSourceAscii(item_id);
    query.next();
    QByteArray asciiArray = QByteArray::fromBase64(query.value("ascii").toByteArray());
    QString *result = new QString(asciiArray);
    qDebug() << *result;

Это должны быть строки цифр, но у меня есть что-то вроде этого: w߇ k ۇ z 燸 wӇ k { ж ۝}; {х {к {к {kxkx߾ {к {ш ㇸ


Примеры строк, которые мне нужны:
2490 0,21979421377182 4,82690520584583E-02
2491 0,226718083024025 4,33071963489056E-02

Есть ли у вас какие-либо предложения по этому поводу? Благодарю.

0 ответов

Другие вопросы по тегам