一、网络流
1.    最常用的方法  Read()  Write()    Flush()
 NetworkStream netStream = new NetworkStream(mesock);
byte[] nyByte = new Byte[];
// Read() :
netStream.Read(myByte, , myByte.Length);
// Write():
netStream.Write(myByte, , myByte.Length);
netStream.Flush();
二、文本流
1.    文本编码格式:
        ASCII(几乎支持所有协议)    UTF8(支持SMTP协议、POP3协议, 支持汉字传输)    BigEndianUnicode码(是双字节码,所以一般协议不用这个, 支持汉字传输)
  <1> 向文件写文本流
 StreamWrite sw = null;
sw = new StreamWrite("f:\\1.txt", false, System.Text.Encoding.UTF8); // 如文件不存在则创建,存在则打开,并且用新数据覆盖旧数据
sw.Write("写入的信息");
sw.Close();
  <2>打开文件时指定文件权限和编码格式
 sw = new StreamWrite("f:\\1.txt", true, System.Text.Encoding.UTF8); // 如文件不存在则创建,存在则打开,并且新数据在旧数据后面
  <3> 向网络写入文本
 string data = "abcdefghijklmnopqrstuvwxyz";
byte[] datas = System.Text.Encoding.UTF8.GETBytes(data);
NetworkStream netStream = new NetworkStream(mysock);
netStream.Write(myByte, , myByte.Length);
  <4> 从文件读取文本
 StreamReader sr = null;
sr = new StreamReader("f:\\1.txt", false, System.Text.Encoding.UTF8);
string data = sr.ReadToEnd();
sr.Close();
  <5> 从网络读取文本
 string data = "abcdefghijklmnopqrstuvwxyz";
byte[] datas = System.Text.Encoding.UTF8.GETBytes(data);
NetworkStream netStream = new NetworkStream(mysock);
netStream.Read(myByte, , myByte.Length);
三、 文件流(主要用于读写非文本文件)  
  <1> 将网络流数据写入文件
 FileStream filestream = new FileStream(path, FileMode.OpenOrCreate, FileAccess.Write);
int readNumber = ;
bytep[] byte = new byte[];
while ( (readNumber = stream.Read(byte, , )) > )
{
filestream.Write(byte, , readNumber);
filestream.Flush();
}
filestream.Close();
  <2> 读文件并写入网络流  
 FileStream fileStream = new FileStream(path, FileMode.Open, FileAccess.Read);
int number = ;
// 定义缓冲区
byte[] bb = new bytep8[];
// 循环读文件
NetworkStream stream = new NetworkStream(newClient);
while ( (number=filestream.Read(bb, , )) != )
{
// 向客户端发送流
stream.Write(bb, , );
}

c#基础: NetWorkStream类的主要属性的更多相关文章

  1. springMVC基础controller类

    此文章是基于 搭建SpringMVC+Spring+Hibernate平台 功能:设置请求.响应对象:session.cookie操作:ajax访问返回json数据: 创建springMVC基础con ...

  2. hibernate基础dao类

    此文章是基于 搭建SpringMVC+Spring+Hibernate平台 功能:数据库的保存.更新.删除:sql.hql查询:分页查询:调用存储过程 创建hibernate基础dao类: BaseD ...

  3. [.net 面向对象编程基础] (9) 类和类的实例

    [.net 面向对象编程基础] (9) 类和类的实例 类 ,顾名思义就是分类.类别的意思.我们要面向对象编程,就需要对不同的事物进行分类.类可以说是.net面向对象的核心. 类:就是具有相同的属性和功 ...

  4. [.net 面向对象编程基础] (10) 类的成员(字段、属性、方法)

    [.net 面向对象编程基础] (10) 类的成员(字段.属性.方法) 前面定义的Person的类,里面的成员包括:字段.属性.方法.事件等,此外,前面说的嵌套类也是类的成员. a.类的成员为分:静态 ...

  5. python基础——枚举类

    python基础——枚举类 当我们需要定义常量时,一个办法是用大写变量通过整数来定义,例如月份: JAN = 1 FEB = 2 MAR = 3 ... NOV = 11 DEC = 12 好处是简单 ...

  6. python基础——定制类

    python基础——定制类 看到类似__slots__这种形如__xxx__的变量或者函数名就要注意,这些在Python中是有特殊用途的. __slots__我们已经知道怎么用了,__len__()方 ...

  7. Python基础-类的探讨(class)

    Python基础-类的探讨(class) 我们下面的探讨基于Python3,我实际测试使用的是Python3.2,Python3与Python2在类函数的类型上做了改变 1,类定义语法  Python ...

  8. 二十六. Python基础(26)--类的内置特殊属性和方法

    二十六. Python基础(26)--类的内置特殊属性和方法 ● 知识框架 ● 类的内置方法/魔法方法案例1: 单例设计模式 # 类的魔法方法 # 案例1: 单例设计模式 class Teacher: ...

  9. 第二十九节:Java基础知识-类,多态,Object,数组和字符串

    前言 Java基础知识-类,多态,Object,数组和字符串,回顾,继承,类的多态性,多态,向上转型和向下转型,Object,数组,多维数组,字符串,字符串比较. 回顾 类的定义格式: [类的修饰符] ...

随机推荐

  1. tmux environment keep

    Shell 下 tmux 不能保持 PATH 变量,解决方法如下: 添加如下配置信息到 ~/.tmux.conf 中即可. set-option -ga update-environment PATH ...

  2. MVC 5.0 之奇葩错误-<类型“ASP._Page__ViewStart_cshtml”不从“System.Web.WebPages.StartPage”继承>

    在实际项目中,我们通常添加MVC项目会先添加一个MVC Empty 的项目,然后需要什么在往里面添加. 但是Empty项目里面只有一个路由注册,而且没有_ViewStart.cshtml文件需要自己添 ...

  3. 反射那些事儿——Java动态装载和反射技术

    一直以来反射都是只闻其声,却无法将之使用,近日尽心下来学习下,发现了很多精妙之处. Java动态装载和反射技术 一.类的动态装载 1.Java代码编译和执行的整个过程包含了以下三个重要的机制: ● J ...

  4. MySql不支持主外键

    创建表不支持主外键,能够添加外键成功,但是无法外键约束.查资料发现MySql的默认ENGINE 为MyISAM  ,不支持外键,需要修改为 INNODB 修改前: Create Table CREAT ...

  5. 树莓派编译C++

    首次研究树莓派~  安装的Linux 编译C++时,就出现了问题,未定义!!无法识别 查了原因是没有安装  build-essential 解决方法 sudo apt-get install buil ...

  6. 解决SurfaceView设置透明造成覆盖其他组件的替代方案

    之前在项目里面绘制摇杆圆盘使用SurfaceView来实现,同时设置SurfaceView透明,但是这样会造成SurfaceView的组件会覆盖其他的组件,一般情况没有关系,而不一般的情况就是有类似上 ...

  7. HTML&CSS基础学习笔记1.6-html的文本操作标签

    文本也许是HTML里最常见的元素了,所以我们有必要对HTML的文本操作标签做下认识. 1. <em>,<i>内的文字呈现为倾斜效果: 2. <strong>,< ...

  8. CSAPP--优化程序性能

    一.编写高效的程序: 1.选择合适的算法和数据结构. 2.编写出编译器能够有效优化以转换为高效可执行的源代码. 3.并行计算.当然重点还是第一个,良好的算法和数据结构大大减小了程序的时间复杂度. 二. ...

  9. laravel实现发送qq邮件

    首先修改config/mail.php 'from' => [ 'address' => 'hello@example.com', 'name' => 'Example', ], 修 ...

  10. MySQL性能分析脚本

    #!/usr/bin/python #!coding:utf-8 import mysql.connector as connector import json """ ...