FileStream,Read,byte长度超过文件内容时,怎么不是0

FileStream,Read,byte长度超过文件内容时,怎么不是0,第1张

int length=fs.Read(b, 0, b.Length)

fs.Close()

if(leghth>0)

{

byte[] strBuff=new byte[length]

System.Buffer.BlockCopy(b,0,strBuff,length)

returnEncoding.Default.GetString(strBuff))

}

这要看 文本控件他是怎么处理的铅中啊 基本大多数文本控件都会 把所有字符显示出来

\0作拍激裤为字符结束 这只是一袭简个标准而已 不代表一定就要遵守

fs.Write(content,0,content.Length)

content是你要写入文件的内容,是个字节数组

例如content有可能是:

byte[] content= encoder.GetBytes("这里是你要写入文件的内容等等\n\r")

FileStream.Write这个方法的意思是,将content写入,从下标0开始,到content.Length为止

也就是将整个content数组的内容都写到你指定的文件里

(如果content.Length这里你写的是其他数字的话,那么就取到该数组祥枣下标为止,如果小谨孝拆于数组长度则为部分写入,如果超过数组长度会出现异常)

你指慎颤定写入的文件就是FileStream构造方法里的第一个参数,papersname,它是个完整的路径和文件名称


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/12237164.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-22
下一篇 2023-05-22

发表评论

登录后才能评论

评论列表(0条)

保存