博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
File,FileStream,byte[]3者互相转换总结(转)
阅读量:5148 次
发布时间:2019-06-13

本文共 993 字,大约阅读时间需要 3 分钟。

File>>>FileStream (2种方式)

方式1:
FileStream fs1 = File.Open ( @"D:\集团通知.jpg" , FileMode.Open );
方式2:
FileStream fs2 = new FileStream ( @"D:\通知.jpg" , FileMode.Open );

FileStream>>>byte[]

byte [ ] b1 = new byte [ fs1.Length ];
fs1.Read ( b1 , 0 , b1.Length );
把文件保存到数据库中一般是File>>>FileStream>>>byte[]

byte[]>>>File(2种方式)

假设byte[ ] b1里面有数据
方式1:
File.WriteAllBytes ( @"D:\通知b2.jpg" , b1 );
方式2:
FileStream fs = new FileStream ( @"D:\通知b_2.jpg" , FileMode.OpenOrCreate , FileAccess.Write );
fs.Write ( b1 , 0 , b1.Length );
fs.Close ( );

FileStream>>>FileStream

有时需要把文件流写到ftp的请求流中,实际上是利用byte[]做了一个缓冲区
Stream requestStream = uploadRequest.GetRequestStream ( );
FileStream fileStream =  File.Open ( @"D:\abc.txt" , FileMode.Open );

byte [ ] buffer = new byte [ 1024 ];

int bytesRead;
while ( true )
{
bytesRead = fileStream.Read ( buffer , 0 , buffer.Length );
if ( bytesRead == 0 )
break;
requestStream.Write ( buffer , 0 , bytesRead );
}

转载于:https://www.cnblogs.com/zhwl/archive/2011/03/01/1968113.html

你可能感兴趣的文章
gzip
查看>>
转负二进制(个人模版)
查看>>
LintCode-Backpack
查看>>
查询数据库锁
查看>>
我对于脚本程序的理解——百度轻应用有感
查看>>
面试时被问到的问题
查看>>
注解小结
查看>>
list control控件的一些操作
查看>>
一月流水账
查看>>
判断字符串在字符串中
查看>>
Linux环境下Redis安装和常见问题的解决
查看>>
HashPump用法
查看>>
cuda基础
查看>>
Vue安装准备工作
查看>>
oracle 创建暂时表
查看>>
201421410014蒋佳奇
查看>>
Xcode5和ObjC新特性
查看>>
LibSVM for Python 使用
查看>>
Centos 7.0 安装Mono 3.4 和 Jexus 5.6
查看>>
CSS属性值currentColor
查看>>