标签: io

计算方法的执行时间

可能重复:
如何测量函数运行的时间?

我有一个I/O计时方法,可以将数据从一个位置复制到另一个位置.什么是计算执行时间的最佳和最实际的方法?ThreadTimerStopwatch?还有其他方法吗?我想要最精确的一个,尽可能简短.

.net c# io timer stopwatch

494
推荐指数
7
解决办法
47万
查看次数

python中subprocess.PIPE上的非阻塞读取

我正在使用子进程模块启动子进程并连接到它的输出流(stdout).我希望能够在其标准输出上执行非阻塞读取.有没有办法让.readline非阻塞或在我调用之前检查流上是否有数据.readline?我希望这是可移植的,或至少在Windows和Linux下工作.

这是我现在如何做到的(.readline如果没有数据可用,则阻止它):

p = subprocess.Popen('myprogram.exe', stdout = subprocess.PIPE)
output_str = p.stdout.readline()
Run Code Online (Sandbox Code Playgroud)

python io subprocess nonblocking

477
推荐指数
15
解决办法
21万
查看次数

如何在Java中获取文件的文件扩展名?

为了清楚起见,我不是在寻找MIME类型.

假设我有以下输入: /path/to/file/foo.txt

我想要一种方法来打破这种输入,特别.txt是扩展.在Java中有没有内置的方法来做到这一点?我想避免编写自己的解析器.

java io file

457
推荐指数
15
解决办法
62万
查看次数

将Java InputStream的内容写入OutputStream的简便方法

我惊讶地发现,今天,我不能追查任何简单的方法的内容写入InputStreamOutputStreamJava中.显然,字节缓冲区代码并不难写,但我怀疑我只是遗漏了一些会让我的生活更轻松(代码更清晰)的东西.

那么,给定一个InputStream in和一个OutputStream out,是否有更简单的方法来编写以下内容?

byte[] buffer = new byte[1024];
int len = in.read(buffer);
while (len != -1) {
    out.write(buffer, 0, len);
    len = in.read(buffer);
}
Run Code Online (Sandbox Code Playgroud)

java io stream

424
推荐指数
12
解决办法
41万
查看次数

Python3中的StringIO

我使用的是Python 3.2.1,我无法导入StringIO模块.我使用 io.StringIO和它的作品,但我不能使用它numpygenfromtxt是这样的:

x="1 3\n 4.5 8"        
numpy.genfromtxt(io.StringIO(x))
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

TypeError: Can't convert 'bytes' object to str implicitly  
Run Code Online (Sandbox Code Playgroud)

当我写import StringIO它时说

ImportError: No module named 'StringIO'
Run Code Online (Sandbox Code Playgroud)

python io python-3.x

407
推荐指数
7
解决办法
48万
查看次数

无法使用Directory.Delete删除目录(路径,true)

我正在使用.NET 3.5,尝试使用以下命令递归删除目录:

Directory.Delete(myPath, true);
Run Code Online (Sandbox Code Playgroud)

我的理解是,如果文件正在使用或存在权限问题,这应该抛出,否则它应该删除目录及其所有内容.

但是,我偶尔会得到这个:

System.IO.IOException: The directory is not empty.
    at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
    at System.IO.Directory.DeleteHelper(String fullPath, String userPath, Boolean recursive)
    at System.IO.Directory.Delete(String fullPath, String userPath, Boolean recursive)
    ...
Run Code Online (Sandbox Code Playgroud)

我对这种方法有时会抛出并不感到惊讶,但是当递归为真时,我很惊讶地得到这条特殊的信息.(我知道目录不是空的.)

有没有理由我看到这个而不是AccessViolationException?

.net c# io exception

371
推荐指数
9
解决办法
22万
查看次数

Unicode(UTF-8)在Python中读取和写入文件

我在理解文本读取和写入文件时遇到了一些大脑失败(Python 2.4).

# The string, which has an a-acute in it.
ss = u'Capit\xe1n'
ss8 = ss.encode('utf8')
repr(ss), repr(ss8)
Run Code Online (Sandbox Code Playgroud)

("u'Capit\xe1n'","'Capit\xc3\xa1n'")

print ss, ss8
print >> open('f1','w'), ss8

>>> file('f1').read()
'Capit\xc3\xa1n\n'
Run Code Online (Sandbox Code Playgroud)

所以我输入Capit\xc3\xa1n我最喜欢的编辑器,在文件f2中.

然后:

>>> open('f1').read()
'Capit\xc3\xa1n\n'
>>> open('f2').read()
'Capit\\xc3\\xa1n\n'
>>> open('f1').read().decode('utf8')
u'Capit\xe1n\n'
>>> open('f2').read().decode('utf8')
u'Capit\\xc3\\xa1n\n'
Run Code Online (Sandbox Code Playgroud)

我在这里不理解什么?显然,我缺少一些重要的魔法(或者很有道理).在文本文件中键入什么来获得正确的转换?

我真正没有想到的是,UTF-8表示的重点是,如果你真的不能让Python识别它,那么它来自外部.也许我应该只是JSON转储字符串,并使用它,因为它有一个asciiable表示!更重要的是,当从文件进入时,Python会识别和解码这个Unicode对象的ASCII表示吗?如果是这样,我怎么得到它?

>>> print simplejson.dumps(ss)
'"Capit\u00e1n"'
>>> print >> file('f3','w'), simplejson.dumps(ss)
>>> simplejson.load(open('f3'))
u'Capit\xe1n'
Run Code Online (Sandbox Code Playgroud)

python unicode io utf-8

305
推荐指数
10
解决办法
62万
查看次数

byte []以Java文件

使用Java:

我有一个byte[]代表文件.

如何将其写入文件(即.C:\myfile.pdf)

我知道它已经完成了InputStream,但我似乎无法解决它.

java arrays io inputstream file

300
推荐指数
5
解决办法
54万
查看次数

什么是InputStream和输出流?我们为何以及何时使用它们?

有人向我解释什么InputStreamOutputStream是谁?

我感到困惑的用例都InputStreamOutputStream.

如果您还可以包含一段代码以与您的解释一起使用,那就太棒了.谢谢!

java io inputstream outputstream

281
推荐指数
7
解决办法
24万
查看次数

将MemoryStream保存并加载到文件中

我正在将结构序列化为a MemoryStream,我想保存并加载序列化结构.

那么,如何将MemoryStream文件保存到文件中并将其从文件中加载回来?

c# io memorystream file stream

264
推荐指数
7
解决办法
54万
查看次数