Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 55, средняя оценка - 4.71
G-Cat
16 / 16 / 1
Регистрация: 15.03.2009
Сообщений: 94
#1

Как использовать getline и fgets? - C++

20.10.2009, 23:44. Просмотров 6816. Ответов 5
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include <iostream>
#include <fstream>
#include <string>
 
using std::ofstream; 
using std::cout;
using std::endl;
using std::string;
using std::getline;
 
 
int main()
{
    string str;
    ofstream fout("operaprefs.ini"); 
    
    if(!(fout.is_open()))
        cout << "ERROR: not file";
    else
    {
        while(!fout.eof())
        {
            getline(fout, str);
            
            if (str == "[Proxy]")
            {
                fout << "\nWeb Turbo Config File=C:\\Program \n";
                fout << "Files\\Opera\\locale\\ru\\turbosettings.xml\n";
                fout << "Enable start with HTTP 1.1 for proxy=-1\n";
                fout << "Use HTTPS=1\n";
                fout << "Use FTP=0\n";
                fout << "Use GOPHER=0\n";
                fout << "Use WAIS=0\n";
                fout << "Use Automatic Proxy Configuration=0\n";
                fout << "HTTP server=115.31.137.15:80\n";
                fout << "HTTPS server=115.31.137.15:80\n";
                fout << "FTP server=115.31.137.15:80\n";
                fout << "Gopher server=115.31.137.15:80\n";
                fout << "WAIS server\n";
                fout << "Automatic Proxy Configuration URL=\n";
                fout << "Enable HTTP 1.1 for proxy=-1\n";
                fout << "No Proxy Servers=\n";
                fout << "No Proxy Servers Check=0\n";
                fout << "Use HTTP=0\n"; 
                
                break;
            }
        }       
    }
 
    fout.close();
    cout << endl;
    
    system("PAUSE");
    return 0;
}
не пойму почему код не компилится. Следом вопрос, не лучше бы тут через fgets() реализовать вместо getline()? Если да, то не подскажете как с апуеы работать (в плане того чо в скобочках указывать)?
Заранее благодарю.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.10.2009, 23:44     Как использовать getline и fgets?
Посмотрите здесь:

Как использовать функцию fgets? - C++
Люди прочитал тут про функцию fgets() но как то понять до конца не могу поясните плиз кто понимает и работал с ней уже... А нашел такую...

Как использовать функцию getline - C++
есть программа структура о книгах, с поиском по дате из-за функции cin можно ввести только одно слово так как после пробела cin не...

Можно ли использовать cin.getline для указателя типа char* - C++
Вот к примеру код он работает, но при отладке Ошибка доступа. #include &lt;iostream&gt; using namespace std; struct EXAMPLE{char* pName;...

Как детектировать EOF с fgets/gets - C++
Проблема в определении: Файл1: строка1 строка2 EOF Файл2: строка1 строка2EOF

Как правильно работать с функциями gets() и fgets()? - C++
Подскажите, как правильно пользоваться ими? При использовании gets() компилятор выдает ошибку error: ‘gets’ was not declared in this scope ...

Fopen и fgets, не понимаю как с ними оперировать - C++
Получаю такую штуку как sentence из командной строки в виде C:\folder\name.txt, и хочу её вставить в fopen. Обычно пишут...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Monte-Cristo
2788 / 1374 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
21.10.2009, 00:11     Как использовать getline и fgets? #2
Цитата Сообщение от G-Cat Посмотреть сообщение
не пойму почему код не компилится
потому что ты открываешь файл для записи, а не для чтения (выходной поток, а не входной). Как ты из него в string считаешь?

Цитата Сообщение от G-Cat Посмотреть сообщение
fgets() реализовать вместо getline()?
fgets() не работает с std::string
M128K145
Эксперт С++
8284 / 3503 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
21.10.2009, 01:18     Как использовать getline и fgets? #3
если не ошибаюсь, то fgets - это С, а код С++, так что лучше такого не делать
G-Cat
16 / 16 / 1
Регистрация: 15.03.2009
Сообщений: 94
21.10.2009, 07:57  [ТС]     Как использовать getline и fgets? #4
и как мне тогда лучше находить нужную строку и и записывать данные после неё?
accept
4821 / 3241 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
21.10.2009, 11:03     Как использовать getline и fgets? #5
генери новый файл, вписывать между строчек не получится
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.10.2009, 11:11     Как использовать getline и fgets?
Еще ссылки по теме:

Как заменить функцию fgets на strlen и strcpy? - C++
while (fgets(s1, sz_line, fp)) //будет прочитано 120 символов { // считаем длину текущей строки , будет в j j = 0; while...

Как работает программа? В чем суть функции fgets? - C++
#include &lt;iostream&gt; #include &lt;stdio.h&gt; int main(int argc, char** argv) //кол-во аргументов, указатель на массив указателей на сами...

Как работает f.getline(buf, MAX_LEN, '\n') ? - C++
Я так понимаю, что buf - куда мы считываем, MAX_LEN сколько считываем, а что значит '\n' (я знаю, что это символ переноса строки, просто...

Как getline() определяет откуда продолжать вывод - C++
Пусть есть такой файл Эта программа выведет на экран содержимое файла #include &lt;iostream&gt; #include &lt;string&gt; #include...

Как заполнить циклично строки через getline? - C++
Добрый день. Подскажите пожалуйста,почему в следующей ситуации: for(int i=0;i&lt;K;i++) { ... cout&lt;&lt;&quot;ФИО&quot;&lt;&lt;endl; ...

Оставить все как есть || использовать парсер xml || или использовать struct - C++
Собственно имеется код... #include &lt;io.h&gt; #include &lt;string&gt; #include &lt;vector&gt; #include &lt;fstream&gt; #include &lt;iomanip&gt; #include...


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

Или воспользуйтесь поиском по форуму:
Monte-Cristo
2788 / 1374 / 30
Регистрация: 07.03.2009
Сообщений: 4,446
21.10.2009, 11:11     Как использовать getline и fgets? #6
G-Cat, открыть файл не для записи, а для чтения и записи.
Читай об fstream.
Yandex
Объявления
21.10.2009, 11:11     Как использовать getline и fgets?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru