Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.10.2011, 15:40   #1
Шиншилка
Пользователь
 
Регистрация: 20.04.2011
Сообщений: 11
По умолчанию Запись в текстовый файл С++

Не записываются данные в файл!
Код:
#include <conio.h>
#include <iostream>
#include <fstream>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <exception>
using namespace std;

class slovo
{
	private:
		char *str;
		int kol_simvol;		
	public:
		slovo()          
		{
			str=new char[256]; 		};
		~slovo(){};            
		bool flag;               
		void proc_sozdan_file(char *s);
		void proc_poiska_slovo(char *s);
		void proc_show_isx_file(char *s);
        	void proc_show_rez_file();
};
 
void slovo::proc_sozdan_file(char *s)
{
	char namefile[80];//èìÿ ôàéëà
	strcpy(namefile,s);//êîïèðîâàòü s â namefiles
	strcat(namefile,".txt");//ïðèñîåäèíÿåò
	// Ñîçäàåì íîâûé ôàéë è çàïîëíÿåì åãî äàííûìè
	ofstream f;
	f.open(namefile,ios::out); // Îòêðûòèå ôàéëà äëÿ çàïèñè

		cout<<"Zapolnite file dannami"<<endl;
		gets(str);// Ââîäèì äàííûå â ñòðîêó
		f.write((char *)&str,sizeof str);  // Çàïèñûâàåì ñòðîêó â ôàéë
     	delete str; // Î÷èùàåì ñòðîêó äëÿ äàëüíåéøåãî èñïîëüçîâàíèÿ.
		cout<<"_____________________________________"<<endl;
		cout<<"                            !!!file "<<namefile<<" sozdan"<<endl;
		f.close();

}

void slovo::proc_poiska_slovo(char *s)
{
	int i=0;
	int probel=0;
	int pozicion=0;
	kol_simvol=0;
	int p=0;
	char namefile[80];
	strcpy(namefile,s);
	strcat(namefile,".txt");

	ifstream f;
	f.open("namefile",ios::in); // Îòêðûòèå ôàéëà äëÿ ÷òåíèÿ
		f.read((char*)&str,strlen(str));
		cout<<"______________________________________"<<endl;
		cout<<endl;
		cout<<"Dlinna_stroki:        "<<strlen(str)<<endl;
		for (i=0;i<=strlen(str);i++)
		{
			if ((str[i]==' ')||(i==strlen(str))) 
				{
					if(kol_simvol<p)	
					{
						kol_simvol=p;
						pozicion=(i+1)-p;	
						p=0;
					}
					else
					{
						p=0;
					}
				}
			else
			{
				p++;
			}
		}	
		cout<<"Kolich_max_simvolov:  "<<kol_simvol<<endl;
		cout<<"Pozicion_perv_simv :  "<<pozicion<<endl;
		cout<<"_________________________________________"<<endl;
		f.close();
		ofstream ftemp;
		ftemp.open("ftemp.txt",ios::out); // Îòêðûòèå ôàéëà äëÿ çàïèñè
		for (i=pozicion-1;i<(pozicion-1)+kol_simvol;i++)
		{
			ftemp.write((char *)&str[i],1);
		}
		ftemp.close();  
			cout<<"                            !!!File ftemp.txt zapisan"<<endl;
			cout<<"_____________________________________"<<endl;
}
void slovo::proc_show_isx_file(char *s)
{
	char namefile[8];
	strcpy(namefile,s);
	ifstream f;
	f.open("namefile",ios::in); // Îòêðûòèå ôàéëà äëÿ ÷òåíèÿ
		f.read((char*)&str,strlen(str));
		cout<<"Isxodniy file :";
		cout<<""<<str<<endl;
		f.close();
}
void slovo::proc_show_rez_file()
{
    char *s;
	s=new char[kol_simvol];
	ifstream f;
	f.open("ftemp.txt",ios::in); // Îòêðûòèå ôàéëà äëÿ ÷òåíèÿ
    	f.read((char *)s,kol_simvol);
		cout<<"Rezultat file :";
		cout<<""<<s<<endl;
		cout<<"_________________________________________"<<endl;		
		f.close();
}
void main()
{
	char namefile[8];
	cout<<"Poryadok deistviu vipolneniya programmi "<<endl;
	cout<<"  Sozdaem i zapolnyaem file; "<<endl;
	cout<<"  Ischem slovo max dlinni; "<<endl;
	cout<<"  Zapisivaem slovo v noviuy file; "<<endl;
	cout<<"  Pechatyem isxodnyuy stroky; "<<endl;
	cout<<"  Pechatuem rezultat;"<<endl;
	cout<<"_________________________________________"<<endl;
	cout<<endl;
	cout<<"Vvedite imya sozdovaemogo file"<<endl;
	cin>>namefile;
	//strcat(namefile,".txt");

	slovo max;
max.proc_sozdan_file(namefile);
	max.proc_poiska_slovo(namefile);
	max.proc_show_isx_file(namefile);
	max.proc_show_rez_file();
getch();
}
Шиншилка вне форума Ответить с цитированием
Старый 30.10.2011, 15:26   #2
Евгений5
 
Регистрация: 17.10.2011
Сообщений: 3
По умолчанию

Кто-нибудь решите задачу пожалуйста в Delphi 7
Даны натуральное число n, символы S1,...,Sn. Изменить последовательность S1,...,Sn , заменив в ней все пары символов ph на f
Евгений5 вне форума Ответить с цитированием
Старый 30.10.2011, 15:37   #3
jasul
Падаван
Пользователь
 
Аватар для jasul
 
Регистрация: 23.09.2011
Сообщений: 98
По умолчанию

Когда вводиш имя файла в который хочеш пройзвести запись пишеш его расшерение txt ???
............Сила воли ключ идеальности...........
jasul вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запись данных в текстовый файл Jene4ka Общие вопросы Delphi 2 26.05.2011 17:27
Запись в текстовый файл cr1t Общие вопросы Delphi 5 31.07.2010 19:42
запись html тегов в текстовый файл bicdibus Общие вопросы Delphi 4 22.03.2010 23:02
Запись в текстовый файл из ComboBox Siluet Общие вопросы Delphi 11 13.12.2009 14:04
Запись в текстовый файл Xardas Общие вопросы Delphi 9 20.01.2008 13:22