Предыдущий пост -
Следующий пост -

std::basic_ostream.

Рубрика: ostream, Дата: 15 August, 2013, Автор:

Выходной поток.

Члены и типы наследованны от ios_base и base_ios: event, event_callback, failure, fmtflags, Init, iostate, openmode, seekdir.

Собственные функции члены.

constructor

#include <iostream>
using std::cout;
using std::endl;
using std::ios;
using std::ostream;
#include <fstream>
using std::filebuf;

int main()
{
	filebuf fb;
	fb.open("test.txt",ios::out);
	ostream os(&fb);
	os <<"hellow world gacpada"<<endl;
	fb.close();

	return 0;
}

 

operator<<()

#include <iostream>
using std::cout;
using std::endl;
using std::right;
#include <iomanip>
using std::setw;

int main()
{
	int val=30;
	cout <<right;
	cout <<setw(10);
	cout <<val<<endl;

	return 0;
}

 

basic_ostream::put()

Вставить чтоли символ хз.

#include <fstream>
using std::ofstream;
#include <iostream>
using std::cin;
using std::cout;
using std::endl;

int main()
{
	ofstream f("test.txt");
	char c;

	cout <<"Enter text, stop dot"<<endl;

	do
	{
		c=cin.get();
		f.put(c);
	}while(c!='.');

	f.close();

	return 0;
}

 

basic_ostream::write()

Записывает блок данных.

#include <fstream>
using std::ifstream;
using std::ofstream;

int main()
{
	ifstream in("test.txt",ifstream::binary);
	ofstream of("new.txt",ifstream::binary);

	in.seekg(0,in.end);
	long size=in.tellg();
	in.seekg(0,in.beg);

	char* buff=new char[size];

	in.read(buff,size);
	of.write(buff,size);

	in.close();
	of.close();
	delete[] buff;

	return 0;
}

 

basic_ostream::tellp() и basic_ostream::seekp().

Получить позицию в выходной последовательности, a seekp устанавливает нужную позицию, как бы перемещаются по потоку, короче курсор перемещают.

#include <fstream>
using std::ofstream;

int main()
{
	ofstream of("test.txt");

	of.write("Thiw is an apple",16);
	long pos=of.tellp();
	of.seekp(pos-7);
	of.write(" sam",4);

	of.close();

	return 0;
}

 

basic_ostream::flush()

Очистить буфер выходного потока.

// Flushing files
#include <fstream>      // std::ofstream
using std::ofstream;

int main () {

  ofstream of ("test.txt");

  for (int n=0; n<100; ++n)
  {
    of << n;
    of.flush();//видимо буфер ощищает или хз что делает.
  }
  of.close();

  return 0;
}

 

Функции члены унаследованные от basic_ios: good, eof, fail, bad, operator!, operator bool, rdstate, setstate, clear, copyfmt, fill, exceptions, imbue, tie, rdbuf, narrow, widen.

Функции члены унаследованные от ios_base: flags, setg, unsetf, precision, width, imbue, getloc, xalloc, iword, pword, register_callback, synk_with_stdio.

[youtube]https://www.youtube.com/watch?v=E-ZBDsHpRGY[/youtube]

Комментарии:


Оставить комментарий

Your email address will not be published. Required fields are marked *