【编程开发】AspAsp.NetCGIPHPJspXMLPERLC++C#VCVBDelphiPowerBuilderJAVA汇编数据库编程移动开发其它语言

您现在的位置:首页 > 网络学院 > 编程开发 > VC > 实例解析C++/CLI的输入与输出

实例解析C++/CLI的输入与输出

来源: 作者: 日期:2006-12-27

【聚杰网VC】实例解析C++/CLI的输入与输出

当使用标准C++编程时,我们已开始接触到两个主要的I/O"工具":标准C头文件cstdio和标准C++中与流相关的头文件iostream,如果加上Windows的话,那么还有Win32库和MFC库,另外,还有CLI/.NET。本文将要探讨的,就是C++/CLI中的输入与输出。

  简介

  日常,我们与文件或设备进行通讯的逻辑通道,称为流。数据可以8位字节或16位Unicode字符形式进行读写,而两者都有其自己的类集;另外,还有用于在字节与字符之间转换的类。其中,字符流通过Stream类及其的派生类实现;字符流通过TextReader与TextWriter类及其的派生类实现。

  在图1中演示了标准I/O的类继承关系。(带有System命名空间前缀的类与I/O无关,但其却是I/O类的基类。)

  图1:标准I/O类继承关系

  System::Object
   System::Attribute
    System::ComponentModel::MemberAttribute
     System::ComponentModel::DescriptionAttribute
      IODescriptionAttribute
   System::ComponentModel::Component
    FileSystemWatcher
   System::Delegate
    FileSystemEventHandler
     RenamedEventHandler
   System::EventArgs
    FileSystemEventArgs
    RenamedEventArgs
   System::Exception
    IOException
     DirectoryNotFoundException
     EndOfStreamException
     FileNotFoundException
    PathTooLongException
    System::SystemException
    InternalBufferOverflowException
   BinaryReader
   BinaryWriter
   FileSystemEntry
    Directory
    File
   Stream
    BufferedStream
    FileStream
    MemoryStream
   TextReader
    StreamReader
    StringReader
   TextWriter
    StreamWriter
    StringWriter
   System::ValueType
    System::Enum
     ChangedFilters
     FileAccess
     FileMode
     FileShare
     FileSystemAttributes
     SeekOrigin
     WatcherChangeTypes
     WatcherTarget
   WaitForChangedResult

  每当一个程序运行时,会自动为我们打开三个流,分别是:

  ·标准输入:一般来说,其被定向到键盘(可以使用Console::SetIn来进行重定向);可通过其类型为TextReader的Console::In字段来访问。

  ·标准输出:一般来说,其被定向到屏幕(可以使用Console::SetOut来进行重定向);可通过其类型为TextWriter的Console::Out的字段来访问。标准输出一般用于结果的显示。

  ·标准错误:一般来说,其被定向到屏幕(可以使用Console::SetError来进行重定向);可通过其类型为TextWriter的Console::Error字段来访问。标准错误一般用于错误信息的显示。

  在标准流中,可支持多种单字节与多字节字符编码,例如,在大量的日文计算中,或许不会存储为Unicode,但可使用占据一个或多个字节的多种编码形式来存储,如JIS、Shift-JIS、EUC;同样地,在使用字母的"西方国家"中,大量的文本使用EBCDIC编码来存储,而使用UTF-8格式也在日渐增多。字符流隐藏了处理这些编码的复杂性,它们中的某些类可允许指定某种特定的编码形式。对字符编码的详细讨论已经超过了本文的范围,可参阅其他书籍。

1 2 3 4 5 6 7 下一页

评论   点击查看全部评论
您的评论参与,将为聚杰带来更大的动力!请不要吝啬!
快速回复
请使用文明语言让我们维护健康绿色网络环境!

匿名发表   验证码: