C++中rdbuf重定向流的例子

今天学习了一点东西,其实是复习了。关于rdbuf的使用。

C++中rdbuf重定向流的经典例子:

#include <iostream>
#include <fstream>
int main(void)
{
 std::ifstream log("out.log");
 std::streambuf* x = cout.rdbuf(log.rdbuf()); // 返回cout的流对象指针,使cout重定向到log文件中
 std::cout << "Test\n";  // 写入到文件中
 std::cout.rdbuf(x);      // 恢复cout的流对象指针
 std::cout << "Test2\n";  // 写入cout
 return 0;
}

很经典的东西了。

时间: 2024-09-12 06:55:52

C++中rdbuf重定向流的例子的相关文章

浅谈PHP中Stream(流)_php技巧

流(stream)的概念源于UNIX中管道(pipe)的概念.在UNIX中,管道是一条不间断的字节流,用来实现程序或进程间的通信,或读写外围设备.外部文件等.根据流的方向又可以分为输入流和输出流,同时可以在其外围再套上其它流,比如缓冲流,这样就可以得到更多流处理方法. PHP里的流和Java里的流实际上是同一个概念,只是简单了一点.由于PHP主要用于Web开发,所以"流"这块的概念被提到的较少.如果有Java基础,对于PHP里的流就更容易理解了.其实PHP里的许多高级特性,比如SPL,

举例讲解Java中的Stream流概念_java

1.基本的输入流和输出流 流是 Java 中最重要的基本概念之一.文件读写.网络收发.进程通信,几乎所有需要输入输出的地方,都要用到流. 流是做什么用的呢?就是做输入输出用的.为什么输入输出要用"流"这种方式呢?因为程序输入输出的基本单位是字节,输入就是获取一串字节,输出就是发送一串字节.但是很多情况下,程序不可能接收所有的字节之后再进行处理,而是接收一点处理一点.比方你下载魔兽世界,不可能全部下载到内存里再保存到硬盘上,而是下载一点就保存一点.这时,流这种方式就非常适合. 在 Jav

IIS中永久重定向的使用(包括参数设置)-301

首先,解释下什么是资源的永久重定向,通俗简单理解下,当你在浏览器中输入sina.com.cn(新浪首页)的时候,网址是不是变成www.sina.com.cn了?再说一些163.com.qq.com都会变成www.xxx.com等的样式,使用的就是资源的永久重定向,只不过他们使用的不是IIS.这里只来说说IIS中使用永久重定向的参数的方法.下面将说下IIS6.0中使用重定向的方法. 前提假设,为了简化输入这里假设两个网址:AA-代表aa.com,BB-代表www.aa.com 一.如何设置重定向的

IIS中利用重定向URL来防止Access数据库被下载的方法

对于ASP+Access开发的网站,安全性最最让人担忧的就是Access数据库可以随意下载,当然我们可以通过一些修改数据库名称的手段进行尽量的防护,但归根结底是不彻底的.所以今天就来谈谈在IIS中利用重定向URL来防止Access数据库被下载的方法. 此方法需要你有IIS的管理权限,如果你使用的是虚拟主机,那估计没有办法了,呵呵.这里假设你有IIS的管理权限. 1.首先打开Internet 信息服务(IIS)管理器,在Internet 信息服务(IIS)管理器左边窗口中找到你数据库所在的文件夹,

mysql中字符串索引问题与例子

  字符串索引与数字索引有一些方面如果没做好会非常的慢了,今天我们就一起来看看小编整理的一些mysql中字符串索引问题与例子了,因为字符索引相对来说也简单文章就简单的整理了一些例子,希望对各位有帮助. 事情的起因是线上日志发现的mysql慢查询.100万数据量的标准,联合查询全部走索引的情况下,尽然要600多毫秒.很不解,但是将索引列由varchar(50)型改为bigint型后,数据提升了30倍.究其原因就索引树上搜索时要进行大量的比较操作,而字符串的比较比整数的比较耗时的多. 所以建议一般情

io流-java中的IO流使用情况

问题描述 java中的IO流使用情况 java中有很多读取和写入文件的操作 像FileWirter Writer Reader BufferWriter 等 我一直区分不清这几个的特点,有没有大神帮忙处理下,通常什么情况使用什么比较好.各有那些优点和缺点 解决方案 你可以上网搜索哦下,很多的 解决方案二: 有的有缓冲区,有的没有,有的没有:有的可以操纵字符文件,有的可以操纵字节文件,你可以按照这个进行分类 解决方案三: 这是我自己整理的,你可以参考下http://blog.csdn.net/ev

c++-ifstream在子函数中无法重定向

问题描述 ifstream在子函数中无法重定向 正如上图中显示的那样,如果我在main函数中直接cin>>n,可以读取到,但是如果在readNum()中用cin>>n则只能得到默认值,请问这是为什么?怎么解决? 解决方案 楼主应该要将while(readNum())改成while(n=readNum()) 不然main函数里的n怎么能接收的到readNum函数里的值 解决方案二: 1.把ifstream写为全局变量,得换个名字 2.把cin传给子函数,类型是ifstream&

网页中的重定向-域名的重定向

中介交易 SEO诊断 淘宝客 云主机 技术大厅 重定向说白了就是通过各种的方法将各种网络请求重新定个方向转到其它位置. 如:网页中的重定向 域名的重定向 路由选择的变化也是对数据报文经由路径的一种重定向 在我们的网站建设中,时常会遇到需要网页重定向的情况:象网站调整,如改变网页目录结构,网页被移到一个新地址,再或者,网页扩展名改变,如因应用需要把.php改成.Html或.shtml,在这种情况下,如果不做重定向,则用户收藏夹或搜索引擎数据库中旧地址只能让访问客户还会得到一个404页面错误信息,访

asp文件流-ASP中怎么使用流来保存网络数据

问题描述 ASP中怎么使用流来保存网络数据 这里有一个网址是动态生成二维码图片的:http://wx.yseasy.com/erweima_1.asp?val=yyy 现在想用Asp将这个网页中的二维码图片保存到服务器上,不知道该如何操作 解决方案 看看这个能不能帮到你http://bbs.csdn.net/topics/350029599