Tag: io

从C#中的文件validation图像

我正在从一个文件加载图像,我想知道如何validation图像,然后才能从文件中完全读取图像。 string filePath = "image.jpg"; Image newImage = Image.FromFile(filePath); 这个问题发生在image.jpg不是真正的JPG格式时。 例如,如果我创build一个空的文本文件并将其重命名为image.jpg,则会在image.jpg加载时引发OutOfMemoryexception。 我正在寻找一个函数来validation给定的图像stream或文件path的图像。 示例函数原型 bool IsValidImage(string fileName); bool IsValidImage(Stream imageStream);

考虑到unsafePerformIO,Haskell真的是一个纯函数式语言吗?

通常将Haskell引用为纯function语言的一个例子。 鉴于System.IO.Unsafe.unsafePerformIO的存在,如何certificate这一点? 编辑:我认为“纯粹function”是指不可能将不纯的代码引入到程序的function部分。

在Ruby中File.open,open和IO.foreach有什么区别?

以下所有的API都做同样的事情:打开一个文件,并为每一行调用一个块。 有什么偏好,我们应该使用一个比另一个? File.open("file").each_line {|line| puts line} open("file").each_line {|line| puts line} IO.foreach("file") {|line | puts line}

ZeroMQ与十字路口I / O

我正在研究使用ZeroMQ作为一个相当大的分布式系统的消息/传输层,主要针对监视和数据收集(许多生产者,一些消费者)。 据我所见,目前有两种不同的相同概念的实现; ZeroMQ和Crossroads I / O,后者是ZeroMQ的一个分支(2012年?)。 我试图找出哪一个使用,并想知道他们之间的差异,但至今没有find关于这方面的许多信息。 例如: 它们在电线上是否兼容? 他们是API兼容的,即某种常见的基础API,可能有不同的附加组件? 他们是否都实现了对ZMTP(ZeroMQ消息传输协议)的支持? 他们对未来的发展有一些共同的理解,还是会继续两个不同的方向? 与其他方面有什么优点/缺点? 基本上,如何select一个呢?

“文件”对象(即w +,r +)的访问模式之间的区别

在Ruby中使用文件时, r+和w+模式有什么区别? 那么a+模式呢?

为什么Haskell程序比等效的Python程序慢得多?

作为编程挑战的一部分,我需要从标准input读取空格分隔的整数序列( 在一行中 ),并将这些整数的总和打印到标准输出。 有问题的序列可以包含多达10,000,000个整数。 我有两个解决scheme:一个用Haskell编写( foo.hs ),另一个用Python 2( foo.py )编写。 不幸的是,(编译后的)Haskell程序比Python程序一直慢,我不知道如何解释这两个程序之间的性能差异。 请参阅下面的基准部分。 如果有的话,我会希望Haskell占上风。 我究竟做错了什么? 我怎样才能解释这种差异? 有没有简单的方法来加快我的Haskell代码? (有关信息,我正在使用8Gb RAM,GHC 7.8.4和Python 2.7.9的2010年中期Macbook Pro。) foo.hs main = print . sum =<< getIntList getIntList :: IO [Int] getIntList = fmap (map read . words) getLine (用ghc -O2 foo.hs编译) foo.py ns = map(int, raw_input().split()) print sum(ns) 基准 在下面, test.txt由一行1000万个空格分隔的整数组成。 # […]

如何将文本追加到文件?

在Linux中向文件添加文本最简单的方法是什么? 我看了这个问题 ,但接受的答案使用了一个额外的程序( sed )我相信应该有一个更简单的方法与echo或类似的。

使用Monadic QuickChecktestingIO操作

任何人都可以给我一个使用Monadic QuickChecktestingIO操作的简单例子吗?

Linux:何时使用分散/收集IO(readv,writev)与具有fread的大型缓冲区

在分散和收集 (即writev和writev )中,Linux读入多个缓冲区并从多个缓冲区写入。 如果说,我有一个3缓冲区的vector,我可以使用readv ,或者我可以使用一个单一的缓冲区,这是3个缓冲区的组合大小,做fread 。 因此,我很困惑:对于哪些情况应该使用分散/聚集,何时应该使用一个大的缓冲区?

如何查看目录是否存在或不在Perl中?

要在使用文件之前查看文件是否存在,我们可以使用: if (-e "filename.cgi") { #proceed with your code } 但是如何识别一个目录是否存在?