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

Проверка файла на пустоту

22.09.2011, 15:46. Показов 9570. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте,
нужно сделать проверку на пустоту,
если файл пуст то идет одна ветка,если не пуст ,то другая
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
std::fstream file("pass.txt");
        if (file.is_open())
        {   
            file.seekg(0, ios::beg);
            if (file.eof())
            {
                std::cout << "Input PASS : ";
                std::cin >> pass;
                file<<pass;
                file.seekg(0, ios::beg);                            //перемещаемся в начало файла
                streampos pos;
                int c=0;    
                while ((c = file.get()) != EOF)             //шифруем пока не конец файла
                {
                    c = c + 1;
                    pos = file.tellp();
                    file.seekp((int)pos-1);
                    file.put((char)c);
                    file.seekp(pos);        
                }
            }else
проверка должна идти после открытия и file.eof() не помогает

Добавлено через 12 минут
проверку на пустоту решил сделать так))
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
file>>pass;
            if (strcmp(pass,"")==0)
            {
                std::cout << "Input PASS : ";
                std::cin >> pass;
                file<<pass;
                std::cout << pass;
                file.seekg(0, ios::beg);                            //перемещаемся в начало файла
                streampos pos;
                int c=0;    
                while ((c = file.get()) != EOF)             //шифруем пока не конец файла
                {
                    c = c + 1;
                    pos = file.tellp();
                    file.seekp((int)pos-1);
                    file.put((char)c);
                    file.seekp(pos);        
                }
            }else
теперь проблема с записью в файл
можно ведь записывать file<<pass
считывать вот так file>>pass считывает а записывать не записывает
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.09.2011, 15:46
Ответы с готовыми решениями:

Проверка на пустоту файла С++
Помогите реализовать проверку на наличие файла и его пустоту. Если файл не открывается, вывести...

Проверка файла на пустоту
Как проверить файл на наличие в нем текста?

Проверка файла на пустоту
void Add_New_User() { FILE *Fptr = fopen(&quot;New_User.txt&quot;, &quot;r&quot;); if ((Fptr =...

Проверка файла на "пустоту"
ifstream fin; if(fin.?) { cout&lt;&lt;&quot;Файл пуст&quot;&lt;&lt;endl } Какой метод проверят наличие...

2
2658 / 1924 / 960
Регистрация: 21.12.2010
Сообщений: 3,569
Записей в блоге: 9
22.09.2011, 16:08 2
после чтения очистить надо file.clear()
0
0 / 0 / 1
Регистрация: 09.09.2011
Сообщений: 40
22.09.2011, 16:27  [ТС] 3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
file>>pass;
            file.clear(); 
            if (strcmp(pass,"")==0)
            {
                std::cout << "Input PASS : ";
                std::cin >> pass;
                file<<pass;
                //file.close();
                //file<<"\0";
                std::cout << pass;
                file.seekg(0, ios::beg);                            //перемещаемся в начало файла
                streampos pos;
                int c=0;    
                while ((c = file.get()) != EOF)             //шифруем пока не конец файла
                {
                    c = c + 1;
                    pos = file.tellp();
                    file.seekp((int)pos-1);
                    file.put((char)c);
                    file.seekp(pos);        
                }
вроде ошибок не выкидывает,но и не записывает,а считывать считывает))

Добавлено через 7 минут
разобрался сам)Спасибо)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.09.2011, 16:27
Помогаю со студенческими работами здесь

проверка на пустоту строки
подскажите как сделать чтобы проверялось еще одно условие if((ff==' ') || (ff=='')) то есть надо...

Проверка массива на пустоту
Здравстуйте! Работаю с деревьями, возникла такая проблема: есть две структуры: struct file {...

Проверка папки на пустоту
Так как времени не было на это задание, пришлось сделать так: BOOL IsEmpty(const wchar_t* sPath)...

Проверка стека на пустоту
Что-то не могу понять как проверить стек на пустоту. Использую класс Stack в VS. В MSDN не нашел...

Проверка нескольких Edit на пустоту и нули
Доброй ночи всем! На форме размещено несколько полей Edit. При наведении мыши на кнопку происходит...

Шаблонный класс матрицы. Проверка матрицы на пустоту
Есть задание (приложил картинку - zadanie.png) Вот что уже скодил: massive.h #ifndef MASSIVE_H...


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

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

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