МихаилллҚаз. 26, 2018, 9:46 Т.Ж.
QVector<QString> запись в файл и чтение из файла
QVector, QVector<QString>, QString
Здравствуйте. Как записать в файл QVector<QString> , учитывая что каждый элемент массива будет разной длины и иметь различный набор символов.
Вот пример того, что пытаюсь записать:
QVector<QString> TextArray; TextArray.append("Text0, test0"); TextArray.append("Text1, test1"); TextArray.append("Text2, test2");
Рекомендуем хостинг TIMEWEB
Стабильный хостинг, на котором располагается социальная сеть EVILEG. Для проектов на Django рекомендуем VDS хостинг.Ол саған ұнайды ма? Әлеуметтік желілерде бөлісіңіз!
Пікірлер
Г
- Геній
- Қыр. 13, 2024, 9:46 Т.Ж.
C++ - Тест 001. Первая программа и типы данных
- Нәтиже:66ұпай,
- Бағалау ұпайлары-1
t
- torgaev_2024
- Қыр. 8, 2024, 3:20 Т.Ж.
C++ - Тест 001. Первая программа и типы данных
- Нәтиже:33ұпай,
- Бағалау ұпайлары-10
Соңғы пікірлер
Linux жүйесінде файлдарды қалай көшіруге болады Задумывались когда-нибудь о том, как мы привыкли доверять свои вещи службам грузоперевозок? Сейчас такие услуги стали неотъемлемой частью нашей жизни, особенно когда речь идет о переездах между …
ВР
Linux жүйесінде файлдарды қалай көшіруге болады Screenshot_20240802-065123.png
Влад РусоковТам. 1, 2024, 10:47 Т.Қ.
QML - Сабақ 016. SQLite деректер қоры және онымен QML Qt-та жұмыс істеу Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
Qt Linux - Сабақ 001. Linux астында Autorun Qt қолданбасы как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
АК
Qt WinAPI - Сабақ 007. Qt ішінде ICMP Ping арқылы жұмыс істеу Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
Анатолий КононенкоАқп. 4, 2024, 10:50 Т.Қ.
Енді форумда талқылаңыз
Evgenii LegotckoiМаусым 24, 2024, 12:11 Т.Қ.
при создании qml проекта Kits есть но недоступны для выбора Поставил Qt Creator 11.0.2. Qt 6.4.3 При создании проекта Qml не могу выбрать Kits, они все недоступны, хотя настроены и при создании обычного Qt Widget приложения их можно выбрать. В чем может …
BlinCTМаусым 24, 2024, 10 Т.Қ.
BlinCTМамыр 5, 2024, 2:46 Т.Ж.
Evgenii LegotckoiМамыр 2, 2024, 11:07 Т.Ж.
Добрый день!
Для чего именно вы пытаетесь учитывать длину, и насколько разный должен быть набор символов?
Возможно, что вам достаточно будет каждый раз на новой строке всё записывать.
Или возможно... можно использовать вообще JSON формат, тогда всё будет легко парситься и будет иметь чёткую структуру. Уточните эти моменты, пожалуйста.
Я к чему спрашиваю, почему нужно длину учитывать. По сути, если вам нужна организация данных в добавку, раз вы длину решили учитывать, то возможно, что лучше будет использовать JSON формат, тогда вам не придётся учитывать длину.
Если нет, то можно и так сделать
Тогда следуя из вашего примера, должун получиться файл с шестью строками.
Не нужно учитывать длину, просто она может быть разной. К примеру каждый элемент массива может быть стихотворением.
Прочитал про JSON, ведь там элементы массива разделяются запятой, а в тексте будет много запятых и наверно выйдет больше элементов массива и они исказятся.
На самом деле в JSON наличие запятых в тексте не является проблемой за счёт его структуры. Это не исказит и не испортит данных, если использовать средства Qt, а не писать свой парсер, там всё отлажено.
После работы накидаю пример сегодня. Там ничего сложного нет.
К слову говоря. JSON используется для хранения данных во многих NO-SQL базах данных, MongoDB, Redis и т.д. и в том числе для хранение крупных текстов и проблем с запятыми не возникает.
Вот пример работы с JSON в Qt, надеюсь, что вам это поможет.
Статья о QJsonDocument, QJsonObject, QJsonArray