7 / 7 / 0
Регистрация: 14.09.2013
Сообщений: 168
1

Работа с QTextEdit

15.09.2013, 13:57. Показов 3316. Ответов 1
Метки нет (Все метки)

Набрал в окне textEdit в столбик:
Россия
Германия
Швеция
и записал это в файл:
C++ (Qt)
1
2
3
4
QFile file("d:/lexikon1.txt");
    file.open(QIODevice::WriteOnly);
    file.write(ui->textEdit->toPlainText().toUtf8());
    file.close();
Теперь загружаю это в textEdit:
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
11
  QString str;
    QFile LicenseFile("d:/lexikon1.txt");
    if (!LicenseFile.open(QIODevice::ReadOnly | QIODevice::Text))return;
 
    while(!LicenseFile.atEnd())
    {
        str = QString::fromUtf8(LicenseFile.readLine());
        ui->textEdit->append(str);
    }
 
           LicenseFile.close();
И вот что он мне показывает:
Россия

Германия

Швеция
Как избавиться от этих междустрочных пробелов? Дело в том, что каждый раз когда str получает строку она имеет на конце символ новой строки '\n' ("Россия\n" "Германия\n"). Как убрать этот символ?
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.09.2013, 13:57
Ответы с готовыми решениями:

Работа с QTextEdit
Как можно получить сигнал о том что QTextEdit получил фокус?? И как можно заблокировать QTextEdit,...

Работа с QTextTable в QTextEdit
Здравствуйте, может у кого есть пример работы таблицы QTextTable подобно word, где в этой таблице...

QTextEdit
Привет подскажите пожалусто как сделать в текстовом редакторе поле на котором можна ставить дебаг...

QTextEdit
Можно ли в QTextEdit отделить часть редактора чтобы текст не попадал в эту часть?как в Promte

1
Почетный модератор
11253 / 4206 / 425
Регистрация: 12.06.2008
Сообщений: 12,135
15.09.2013, 16:10 2
Можно просто QFile::readAll и QTextEdit::setPlainText использовать, что бы сразу все строки добавить. Ведь всё равно строки не обрабатываются... тогда и цикл не нужен.

А что бы убрать перевод строки придётся использовать что-то вроде
C++ (Qt)
1
str = str.left(str.size()-1)
или
C++ (Qt)
1
str = str.left(str.size()-2)
В зависимости от того, какой используется перевод строки: "\n" (как в юниксовых системах) или "\r\n" (как в винде). Хотя, можно использовать
C++ (Qt)
1
str = str.remove('\n').remove('\r');
Добавлено через 1 минуту
Есть ещё функция QString::trimmed(), но она уберёт не только перевод строки, но и пробелы... причём, не только с конца, но и с начала строки тоже. Т.е. строка " ля ля \n" превратится в "ля ля"
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.09.2013, 16:10

QTextEdit
как можно определить число строк в в текстовом документе?

QTextEdit
Добрый вечер у меня произошла вот такая проблема. Суть: Есть у меня класс TextEdit...

QTextEdit
У меня два объекта QTextEdit например я написал в первом предложение на русском перевел ее на...

QTextEdit
Здравствуйте! В данный момент я пишу текстовый редактор. Проблема вот в чем - в процессе его работы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru