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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 26, средняя оценка - 4.65
alex2693
Сообщений: n/a
#1

Проблемы при создании *.txt файла консолем - C++

12.06.2009, 23:15. Просмотров 3284. Ответов 45
Метки нет (Все метки)

у меня код
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
#include "stdafx.h"
#include <iostream>
#include <fstream>
#include "locale.h"
#include "windows.h"
using namespace std;
 
void main(){
setlocale( LC_ALL,"Russian.1572" );
SetConsoleCP(1251);
 SetConsoleOutputCP(1251);
 
 
        char str[128];
        char a[512];
 
char fname[128];
 
cout << "Введите адрес и имя файла: ";
cin >> fname;
 
 
        cout << "Ввести текст\n";
        cin >> a;
        ifstream in;
       
 
 
        if (!in.fail()){//Если открыли
 
 
            
            
            
            
        ofstream out(fname);
               
                while(!in.eof()){
                        out << a;
   in >> str;
 
                }
       
        }
}
этот код должен создать txt файл и ввести туда текст который сам я напишу.Но когда я ввожу скажем "Привет Мир", в txt файле только первое слово записывается...то есть после пробела ничего не записывает....буду благодарен тому кто исправит это
Пользователь получил красную карточку за это сообщение.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.06.2009, 23:15     Проблемы при создании *.txt файла консолем
Посмотрите здесь:

Проблемы при создании и построении проекта Microsoft Visual Studio 2008 Ошибки! - C++
Проблемы при создании и построении проекта Microsoft Visual Studio 2008. Ошибки!!!

Ошибка при создании exe-файла - C++
В Micrisoft visual studio 6.0 при линковке проекта на С++ выходит одна ошибка: LINK : fatal error LNK1104: cannot open file...

Ошибка при создании заголовочного файла - C++
Добрый день. Недавно решил создать свой заголовочный файл, однако при компилятор выдает мне ошибку undefined symbol _main in module c0.ASM...

ofstream / ошибка при создании файла - C++
ofstream f( L&quot;C:\\Users\\Джон Грегорович\\Documents\\RAD Studio\\Projects\\.\\Win32\\Debug\\BackUp\\Wstud.txt&quot;); создает файл, но за...

OpenCv 2 4 7 Ошибка при создании файла vec - C++
Что обозначает эта ошибка и как её исправить ?

Проблемы при открытии файла - C++
Значит программа работает но при запуски идут только одни нули(Может быть я неправильно подключел текстовый документ? int main() { ...

Использование переменной в качестве аргумента при создании файла через ofstream - C++
Рассмотрите пожалуйста следующий код, он работает: /*! Тут насколько я понимаю, мы разбираемся с именем создаваемого\открываемого файла ...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
FunDuck
688 / 379 / 4
Регистрация: 22.01.2009
Сообщений: 1,135
12.06.2009, 23:36     Проблемы при создании *.txt файла консолем #2
C++
1
2
 ifstream in;
if (!in.fail()){//Если открыли
А вот этим ты что пытаешься сделать?
.::.DIMA.::.
143 / 143 / 4
Регистрация: 26.10.2008
Сообщений: 782
13.06.2009, 01:08     Проблемы при создании *.txt файла консолем #3
В 24 строчке cin >> a;
cin записывает символы в строку до первого пробела.
Напишите
C++
1
cin.getline (a, 512);
Search..
Заказ софта
340 / 185 / 10
Регистрация: 26.05.2009
Сообщений: 863
13.06.2009, 01:11     Проблемы при создании *.txt файла консолем #4
Вот мой скромный вариант готовой программы:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
 
int main(int argc, char * argv [])
{
    char line[1024];
 
    printf("Write string: ");
    fgets(line, sizeof(line), stdin);
 
    FILE *fp = fopen("text.txt", "wt");
 
    if(fp == 0) {
        fprintf(stderr, "Error! File not open!\n");
        return -1;
    }
 
    fprintf(fp, line);
    fclose(fp);
 
    return 0;
}
alex2693
Сообщений: n/a
13.06.2009, 10:11     Проблемы при создании *.txt файла консолем #5
Цитата Сообщение от FunDuck Посмотреть сообщение
C++
1
2
 ifstream in;
if (!in.fail()){//Если открыли
А вот этим ты что пытаешься сделать?
ну это больше для пользователя...я там недописал else...
если не открылась прога там написать скажем "нельзя открыть файл" типо..

Добавлено через 4 минуты 17 секунд
Цитата Сообщение от qwert Посмотреть сообщение
В 24 строчке cin >> a;
cin записывает символы в строку до первого пробела.
Напишите
C++
1
cin.getline (a, 512);
не работает...после того как я ввожу адресс консоль сразу закрывается...
вот!сейчас сработало!я снизу это добавил сработало спасибо!Но!я написал "ddd как дела"...в тексте ddd небыло...почему7
или же:написал "Hello world", выводиться только world...
FunDuck
688 / 379 / 4
Регистрация: 22.01.2009
Сообщений: 1,135
13.06.2009, 10:50     Проблемы при создании *.txt файла консолем #6
Цитата Сообщение от alex2693 Посмотреть сообщение
ну это больше для пользователя...я там недописал else...
если не открылась прога там написать скажем "нельзя открыть файл" типо..
Может я чего то не понял...... ifstream - класс для работы с файлами.... при чем тут прога?
Затем этот цикл....
C++
1
while(!in.eof()){//Цикл будет выполнятся пока не закончится файл.... (который даже не открывали)
Вобщем переделал немного твою....:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <fstream>
#include <locale.h>
#include <windows.h>
using namespace std;
 
int main(){
    setlocale( LC_ALL,"Russian.1572" );
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    char fname[128], str[512];
    cout << "Введите адрес и имя файла: ";
    cin >> fname;
    cout << "Ввести текст\n";
    cin.getline(str, 512);
    ofstream out(fname);
    if (!out.fail()){//Если открыли
        out << str;
    }
    return 0;
}
alex2693
Сообщений: n/a
13.06.2009, 11:04     Проблемы при создании *.txt файла консолем #7
Цитата Сообщение от qwert Посмотреть сообщение
cin записывает символы в строку до первого пробела.
а твой вариант вроде работает только скажем я пишу "привет мир я алексей"
выводит в txt " мир я алескей", то есть первое слово исчезает

Добавлено через 4 минуты 30 секунд
Цитата Сообщение от FunDuck Посмотреть сообщение
Может я чего то не понял...... ifstream - класс для работы с файлами.... при чем тут прога?
Затем этот цикл....
C++
1
while(!in.eof()){//Цикл будет выполнятся пока не закончится файл.... (который даже не открывали)
Вобщем переделал немного твою....:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <fstream>
#include <locale.h>
#include <windows.h>
using namespace std;
 
int main(){
    setlocale( LC_ALL,"Russian.1572" );
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    char fname[128], str[512];
    cout << "Введите адрес и имя файла: ";
    cin >> fname;
    cout << "Ввести текст\n";
    cin.getline(str, 512);
    ofstream out(fname);
    if (!out.fail()){//Если открыли
        out << str;
    }
    return 0;
}
это все не я написал я на форме нашел прогу которая из файла удаляет энтеры и выводит в новвый файл...я бы сам не смогу столько написать))))я только только учусь)))

Добавлено через 2 минуты 44 секунды
ввожу твой код делаю дэбаг открывается консоль пишу адрес и имя и сразу закрывается....

Добавлено через 1 минуту 26 секунд
ах даа...ты там на 15 строчке не добавил cin >> str;

Добавлено через 1 минуту 13 секунд
тоже самое что и тогда....я пишу приет как дела, а в тексте только как дела!!!!
FunDuck
688 / 379 / 4
Регистрация: 22.01.2009
Сообщений: 1,135
13.06.2009, 11:47     Проблемы при создании *.txt файла консолем #8
Странно... у меня все работает....
Цитата Сообщение от alex2693 Посмотреть сообщение
Добавлено через 1 минуту 26 секунд
ах даа...ты там на 15 строчке не добавил cin >> str;
А это зачем?? и куда именно.... покажи весь код что получился.....
ISergey
Maniac
Эксперт С++
1373 / 884 / 52
Регистрация: 02.01.2009
Сообщений: 2,653
Записей в блоге: 1
13.06.2009, 12:00     Проблемы при создании *.txt файла консолем #9
Для записи в файл
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// writing on a text file
#include <iostream>
#include <fstream>
using namespace std;
 
int main () {
  ofstream myfile ("example.txt");
  if (myfile.is_open())
  {
    myfile << "This is a line.\n";
    myfile << "This is another line.\n";
    myfile.close();
  }
  else cout << "Unable to open file";
  return 0;
}
Цитата Сообщение от file example.txt
This is a line.
This is another line.
Чтение c файла
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// reading a text file
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
 
int main () {
  string line;
  ifstream myfile ("example.txt");
  if (myfile.is_open())
  {
    while (! myfile.eof() )
    {
      getline (myfile,line);
      cout << line << endl;
    }
    myfile.close();
  }
 
  else cout << "Unable to open file"; 
 
  return 0;
}
Цитата Сообщение от Console
This is a line.
This is another line.
Input/Output with files
alex2693
Сообщений: n/a
13.06.2009, 14:59     Проблемы при создании *.txt файла консолем #10
Цитата Сообщение от FunDuck Посмотреть сообщение
Странно... у меня все работает....

А это зачем?? и куда именно.... покажи весь код что получился.....
сразу после твоего cin-а....этот оператор только как бы свойство для cin>>a-а......

Добавлено через 2 минуты 20 секунд
Цитата Сообщение от ISergey Посмотреть сообщение
Для записи в файл
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// writing on a text file
#include <iostream>
#include <fstream>
using namespace std;
 
int main () {
  ofstream myfile ("example.txt");
  if (myfile.is_open())
  {
    myfile << "This is a line.\n";
    myfile << "This is another line.\n";
    myfile.close();
  }
  else cout << "Unable to open file";
  return 0;
}

Чтение c файла
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// reading a text file
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
 
int main () {
  string line;
  ifstream myfile ("example.txt");
  if (myfile.is_open())
  {
    while (! myfile.eof() )
    {
      getline (myfile,line);
      cout << line << endl;
    }
    myfile.close();
  }
 
  else cout << "Unable to open file"; 
 
  return 0;
}

Input/Output with files
а это все один и тот же код?
.::.DIMA.::.
143 / 143 / 4
Регистрация: 26.10.2008
Сообщений: 782
14.06.2009, 01:03     Проблемы при создании *.txt файла консолем #11
Цитата Сообщение от alex2693 Посмотреть сообщение
не работает...после того как я ввожу адресс консоль сразу закрывается...
вот!сейчас сработало!я снизу это добавил сработало спасибо!Но!я написал "ddd как дела"...в тексте ddd небыло...почему7
или же:написал "Hello world", выводиться только world...
Возможно, ты что-то вводишь с помощью cin, часть записывается куда-нибудь не туда.
.::.DIMA.::.
143 / 143 / 4
Регистрация: 26.10.2008
Сообщений: 782
14.06.2009, 01:14     Проблемы при создании *.txt файла консолем #12
Цитата Сообщение от alex2693 Посмотреть сообщение
ну то есть ниче не изменилось..
В первом случае текст записывается, а во втором читается из файла.
ISergey
Maniac
Эксперт С++
1373 / 884 / 52
Регистрация: 02.01.2009
Сообщений: 2,653
Записей в блоге: 1
14.06.2009, 02:03     Проблемы при создании *.txt файла консолем #13
Цитата Сообщение от alex2693 Посмотреть сообщение
а это все один и тот же код?
В смысле?
alex2693
Сообщений: n/a
14.06.2009, 02:35     Проблемы при создании *.txt файла консолем #14
Цитата Сообщение от ISergey Посмотреть сообщение
В смысле?
ну то есть ниче не изменилось..
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.06.2009, 09:04     Проблемы при создании *.txt файла консолем
Еще ссылки по теме:

При создании файла заголовка в Code::Blocks вставляются какие-то команды препроцессору. - C++
Вот что появляется при создании файла rectangle.hpp: #ifndef RECTANGLE_HPP_INCLUDED #define RECTANGLE_HPP_INCLUDED //Здесь...

Проблемы с кодировкой при подключении текстового файла - C++
Проблема вот в чем...В файле question.txt лежит вопрос, написанный по русски, но когда в консоле я вывожу содержимое &quot;question.txt&quot; на...

Как заставить аудиофайл петь только консолем - C++
Как заставить аудиофайл петь только с помощи консоли,чтобы никакие плееры не были?Хочу написать говорящюю консоль..написать А сказала А

Сформировать из файла f4.txt файл g.txt - C++
Сформировать из файла f4.txt файл g.txt, состоящий из целых чисел, но для нечётных чисел указать также их значение английским словом 1...

Фильтрация txt файла - C++
Добрый день. Имеется txt файл, в котором около 100 строк. Необходимо вытащить из файла только те строки где присутствует имя Машина, и...


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

Или воспользуйтесь поиском по форуму:
alex2693
Сообщений: n/a
14.06.2009, 09:04     Проблемы при создании *.txt файла консолем #15
Цитата Сообщение от qwert Посмотреть сообщение
Возможно, ты что-то вводишь с помощью cin, часть записывается куда-нибудь не туда.
а как могу исправить это?
Yandex
Объявления
14.06.2009, 09:04     Проблемы при создании *.txt файла консолем
Ответ Создать тему
Опции темы

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