C# 正在尝试重构此FileStream.NET代码
我有以下C# 正在尝试重构此FileStream.NET代码,c#,.net,.net-4.0,stream,refactoring,C#,.net,.net 4.0,Stream,Refactoring,我有以下流代码。我觉得它真的很旧很难看,应该有一个更干净的方法来做到这一点 // Write the current chunk to the stream. using (var fileStream = new FileStream(tempPath, currentChunk == 0 ? FileMode.Create :
流
代码。我觉得它真的很旧很难看,应该有一个更干净的方法来做到这一点
// Write the current chunk to the stream.
using (var fileStream = new FileStream(tempPath, currentChunk == 0 ?
FileMode.Create :
FileMode.Append))
{
var buffer = new byte[uploadedFile.Length];
uploadedFile.Read(buffer, 0, buffer.Length);
fileStream.Write(buffer, 0, buffer.Length);
}
它在干什么
我将文件分块上传。因此,我们要么创建一个新文件(当我们处于第一个块时,即chunk==0)。。或者我们将区块数据附加到现有文件中
我觉得这三行已经过时了,有一个更好的方法可以使用
是/否/可能
编辑:.NET4.0对我来说很好:)可能
流。CopyTo
对你有用吗
尽管如此,我认为这个API在.NET4.0之前是不存在的。是否可以
Stream.CopyTo
为您工作
尽管如此,我认为这个API在.NET4.0之前是不存在的。你可以看看
文件
类(System.IO),它提供了处理文件的静态方法;因此,您的整个代码块可能会变成:
File.AppendAllText(path, contentToAppend);
还有其他方法,如writealBytes(…)
,writealText(…)
,或ReadAllText(…)
供参考:您可以查看
文件
类(System.IO),该类提供了处理文件的静态方法;因此,您的整个代码块可能会变成:
File.AppendAllText(path, contentToAppend);
还有其他方法,如writealBytes(…)
,writealText(…)
,或ReadAllText(…)
作为参考:如果您阅读了编程参考
FileMode.Append
如果文件不存在,则追加或创建-基本上您不需要内联iif?该死的nabbit!当然我是怎么忘记的:(:blush:如果你读了编程参考FileMode.Append
如果文件不存在,要么追加,要么创建-基本上你不需要内联iif?该死的nabbit!当然!我是怎么忘记的:(:blush: