crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Тема закрытаНачать новую тему
> QTextStream, уточнение по поводы его работы
AD
  опции профиля:
сообщение 5.2.2009, 11:57
Сообщение #1


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

Спасибо сказали: 70 раз(а)




Репутация:   17  


В одной функции открываю файл, делаю такие действия
class A1
{
   QFile* file;
};
void A1::func1()
{
         QTextStream in(file);
         QString rx("");

         while(!in.atEnd())
    {
        rc = in.readLine();
                func2(&rc);
        }
}

void A1::func2(QString* s)
{
         QTextStream in(file);
/// какие-то действия
}

Вопрос: в функции func2 поток in будет знать на какой строке файла остановился указатель. Т.е. он не будет, надеюсь, указывать на начало? Будет именно на ту строку, что была определена в func1?

Сообщение отредактировал AD - 5.2.2009, 16:23
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 5.2.2009, 12:25
Сообщение #2


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


AD,
да если
void Al::func2(QString* s) // если функция член класса и следовательно file тот который мы читали первый раз
{
         QTextStream in(file);
/// какие-то действия
}



FILE* fp=fopen("filename","r");
char str[256];
fscanf(fp,"%255[0-9]",str);
fscanf(fp,"%255[0-9]",str);
fclose(fp);


есть сомнение, что в str будет вторая строчка?

Сообщение отредактировал kwisp - 5.2.2009, 12:35
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 5.2.2009, 12:41
Сообщение #3


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


AD, я думаю лучше тест написать.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AD
  опции профиля:
сообщение 5.2.2009, 13:03
Сообщение #4


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

Спасибо сказали: 70 раз(а)




Репутация:   17  


Цитата(kwisp @ 5.2.2009, 12:25) *
FILE* fp=fopen("filename","r");
char str[256];
fscanf(fp,"%255[0-9]",str);
fscanf(fp,"%255[0-9]",str);
fclose(fp);


есть сомнение, что в str будет вторая строчка?

У нас разные куски кода. Я привел две разные функции. Вообще не понял ответа....
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 5.2.2009, 13:15
Сообщение #5


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


AD,
ответ это первая часть.
а именно
да если у тебя func2 метод класса Al.
по идее указатели на позицию чтения из файла должен хранить объект файла а не потока.


вторая часть которую ты процетировал это вопрос тебе.
:)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AD
  опции профиля:
сообщение 5.2.2009, 14:08
Сообщение #6


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

Спасибо сказали: 70 раз(а)




Репутация:   17  


Цитата(kwisp @ 5.2.2009, 13:15) *
вторая часть которую ты процетировал это вопрос тебе.
:)

Странный вопрос. И ежу понятно, что да. В str будет 2-ая строчка. В чем смысл вопроса? :)

А функция func2 действительно является членом класса A1. Забыл указать просто! :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 5.2.2009, 14:55
Сообщение #7


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


Цитата
Странный вопрос. И ежу понятно, что да.

проехали...., просто я думаю что твой вопрос и мой одно и тоже.
ежу привет.:)

Сообщение отредактировал kwisp - 5.2.2009, 14:56
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Mitnick
  опции профиля:
сообщение 10.2.2009, 15:32
Сообщение #8


Студент
*

Группа: Новичок
Сообщений: 11
Регистрация: 16.12.2007
Пользователь №: 48

Спасибо сказали: 0 раз(а)




Репутация:   0  


согласен с kwisp, указательна файл один и тот же) и вообще о позиции в файле в данном случае знает только QFile экземпляр.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
AD
  опции профиля:
сообщение 10.2.2009, 17:10
Сообщение #9


Профессионал
*****

Группа: Участник
Сообщений: 2003
Регистрация: 4.2.2008
Из: S-Petersburg
Пользователь №: 84

Спасибо сказали: 70 раз(а)




Репутация:   17  


Цитата(Mitnick @ 10.2.2009, 15:32) *
согласен с kwisp, указательна файл один и тот же) и вообще о позиции в файле в данном случае знает только QFile экземпляр.

Спасибо. Это уже выяснено.

P.S. Прошу администраторов закрыть тему. Вопрос решен!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Тема закрытаНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 25.4.2024, 17:14