草庐IT

filestreams

全部标签

c# - 使用 FileStream 和 FILE_FLAG_NO_BUFFERING 读取文件

一些背景知识:我一直在尝试在对大文件进行IO时使用FILE_FLAG_NO_BUFFERING标志。我们正在尝试减少缓存管理器的负载,希望通过后台IO减少我们的应用程序对用户机器的影响。性能不是问题。尽可能多地躲在幕后是一个大问题。我有一个用于执行无缓冲IO的接近工作的包装器,但我遇到了一个奇怪的问题。当我使用不是4的倍数的偏移量调用Read时出现此错误。Handledoesnotsupportsynchronousoperations.TheparameterstotheFileStreamconstructormayneedtobechangedtoindicatethattheh

mysql - SqlServer 中的 FILESTREAM 存储 -> MySQL 等效?

MySQL版本中是否有任何等效项?5.5用于SqlServer中的FILESTREAM存储? 最佳答案 目前,没有。MySQL中存储二进制数据的只有BLOB、CLOB等数据类型。 关于mysql-SqlServer中的FILESTREAM存储->MySQL等效?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/10255010/

c# - MonoTouch File.ReadAllText 在内部 FileStream.Dispose() 上抛出异常

以下代码似乎偶尔会产生此堆栈跟踪。当在内部FileStream对象上调用dispose方法时,它看起来像是在框架内发生的?对我来说似乎是个错误,有什么想法吗?varpreviousVersion=long.Parse(File.ReadAllText(Paths.VersionFile));堆栈跟踪:System.IO.IOException:InvalidparameteratSystem.IO.FileStream.Dispose(Booleandisposing)[0x00000]in:0atSystem.IO.Stream.Close()[0x00000]in:0atSyste

c# - 'File.Open()' 和 'new FileStream()' 之间的区别

有什么区别,如果有的话? 最佳答案 没有。File.Open在内部只不过是:publicstaticFileStreamOpen(stringpath,FileModemode,FileAccessaccess,FileShareshare){returnnewFileStream(path,mode,access,share);}如果您不使用指定FileAccess和FileShare的重载,它会为您指定(使用FileShare.None和FileAccess.Write追加,否则使用ReadWrite)。也就是说,这是一个实现细

c# - C#中的FileStream StreamReader问题

我正在测试类FileStream和StreamReader如何协同工作。通过控制台应用程序。我试图进入一个文件并读取行并将它们打印在控制台上。我已经能够使用while循环来完成它,但我想使用foreach循环来尝试它。usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.IO;namespacetesting{publicclassProgram{publicstaticvoidMain(string[]args){stringfile=@"C:\Temp\Ne

c# - FileStream.Flush() 和 FileStream.Flush(True) 有什么区别?

MSDN说FileStream.Flush(True)“还清除所有中间文件缓冲区。”。“所有中间文件缓冲区”到底是什么意思? 最佳答案 它会将缓冲在文件系统缓存中的文件数据写入磁盘。该数据通常是根据磁盘写头的位置延迟写入的。拥有1GB的缓存数据在技术上是可行的,因此可能需要相当长的时间。如果这对您很重要,请考虑使用FileOptions.WriteThrough选项。它完全禁用写缓存。这可能非常昂贵;您会发现硬盘到底有多慢。 关于c#-FileStream.Flush()和FileStr

c# - System.IO.FileStream 文件访问与文件共享

我搜索了所有地方,但找不到这个问题的答案。我明白FileAccess处理机器上的文件访问和FileShare处理份额,但我找不到关于它究竟是如何组合在一起以及它们如何相互影响的解释。例如,如果我有using(FileStreamfs=newFileStream(pathName,FileMode.Open,FileAccess.Read,FileShare.ReadWrite))这是否意味着机器上的用户只能读取文件,而远程访问文件夹的用户可以读取和写入文件?此外,使用会产生什么影响using(FileStreamfs=newFileStream(pathName,FileMode.Op

c# - 使用 StreamWriter 和 FileStream 写入 txt 文件

当使用StreamWriter和FileStream将文本附加到.NET4.5中的现有文件时,我遇到了一些有趣的事情(没有尝试过任何旧框架)。我尝试了两种方法,一种有效,一种无效。我想知道两者之间的区别是什么。两种方法的顶部都包含以下代码if(!File.Exists(filepath))using(File.Create(filepath));我在using语句中创建,因为我通过个人经验发现这是确保应用程序完全关闭文件的最佳方式。非工作方法:using(FileStreamf=newFileStream(filepath,FileMode.Append,FileAccess.Writ

c# - 将 MemoryStream 复制到 FileStream 并保存文件?

我不明白我在这里做错了什么。我生成了几个内存流,在Debug模式下我看到它们已被填充。但是,当我尝试将MemoryStream复制到FileStream以保存文件时,fileStream未填充且文件长度为0字节(空)。这是我的代码if(file.ContentLength>0){varbytes=ImageUploader.FilestreamToBytes(file);//bytesispopulatedusing(varinStream=newMemoryStream(bytes))//inStreamispopulated{using(varoutStream=newMemory

c# - IO 101 : Which are the main differences between TextWriter, FileStream 和 StreamWriter?

如果这个问题对于你们这些经验丰富的程序员来说可能听起来有点业余,让我首先道歉,问题是我在工作中一直有很多关于这个的争论所以我真的想弄清楚这个问题,这就是为什么我我依靠stackoverflow社区一劳永逸地解决这个问题:)因此,一方面,根据MSDN,我们有:TextWriterClassRepresentsawriterthatcanwriteasequentialseriesofcharacters.Thisclassisabstract.FileStreamClassExposesaStreamaroundafile,supportingbothsynchronousandasyn