问题标签 [readblock]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1549 浏览

c# - StreamReader ReadBlock 挂在二进制文件上

我有一个小类,它接受来自包含文件上传的浏览器的 POST。我正在使用 StreamReader 来读取它。我读取了标题,然后当我到达正文时,我得到了内容长度并制作了一个该大小的数组,然后stream.ReadBlock()是:

当我运行它并发布一个文本文件时,它工作正常。但是,我尝试了 ZIP 文件和 MP3 文件,但这些都不起作用。它只是挂断stream.ReadBlock()电话。

我首先在带有 Mono 2.6.7 的 Ubuntu 10.04 上尝试了这个(我的 MonoDevelop 项目设置为使用 .net 3.5)。我刚刚通过在 VisualStudio 2010 和 .net 3.5 中运行相同的项目验证了在 Windows7 上发生了同样的事情。我试过从 Firefox 和 Chrome 发布。

任何人都知道为什么会发生这种情况?谢谢。

我还尝试使用 BinaryReader 而不是 StreamReader:

但无论现在如何,它最终都会挂在那个电话上。是因为我使用 StreamReader 读取 POST 的标题,然后使用 BinaryReader 读取正文吗?

0 投票
2 回答
28689 浏览

c# - 何时使用 StreamReader.ReadBlock()?

我想知道一种情况 Read(char[],int,int) 未能返回所有请求的字符,而 ReadBlock() 按预期返回所有字符(比如当 StreamReader 与 FileStream 对象的实例一起工作时)。

0 投票
5 回答
56409 浏览

c# - 在 C# 中使用 ReadBlock 方法时,如何判断何时到达文件末尾?

我注意到它会一遍又一遍地返回相同的读取字符,但我想知道是否有更优雅的方式。

0 投票
1 回答
168 浏览

java - 仅从 Pagesize 的文件中读取记录

我是初学者,我有一个包含可变大小记录的文件;每行有两个字段,即一个是 7-15 位数字键,然后是空格,还有一个字符串,每个记录的大小也是可变的。

我试图仅将页面大小的字节读取到我的缓冲区中,然后处理它们。

问题是,如果我使用 Java.RanomAccessFile 并使用 seek 方法到达特定行,那么我使用 ReadFully 方法将这 1024 个字节读入我的缓冲区。我已经编写了将 byte 转换为 int 并将 byte 转换为 string 的函数 - 但问题是我不知道 7-15 位有多少字节以及我的字符串有多少字节。

0 投票
1 回答
130 浏览

c# - 将一个 Byte[] 合并为单个数组

我确实有一个包含一系列数字的字节数组...

t 阻止而不是其余的!

我怎样才能把所有的 4-8 块都放进去Temp[]??

0 投票
1 回答
4955 浏览

c# - 使用 streamReader.ReadBlock(缓冲区)导入文件

需要导入大量的文本文件并查找一些研究资料,特别是针对我的问题,我决定在这里发布解决方案。我相信它会帮助别人。

我的文件是 3,000,000 的注册表。尝试使用StreamReader.ReadLine()逐行读取,但这是不切实际的。此外,文件太大而无法将它们加载到内存中。

解决方案是使用streamReader.ReadBlock()以块(缓冲区)的形式将文件加载到内存中。

我遇到的困难是ReadBlock()逐字节读取,连续发生或获得另一半。然后下一个缓冲区的第一行是不完整的。为了更正,我加载了一个字符串resto )并与下一个缓冲区的第一行(primeiraLinha )连接。

使用Split的另一个重要细节,在大多数示例中,变量的第一次验证遵循Trim()以消除空格。在这种情况下,我不使用,因为它加入了第一行和第二行缓冲区。

我的朋友培训加布里埃尔·古斯塔夫(Gabriel Gustaf)帮助我解决了这个问题。

如果有人对进一步改进性能有任何建议或提出任何意见,请随时提出。

0 投票
1 回答
554 浏览

streamreader - ArgumentException while reading using readblock streamreader

I am trying to calculate row count from a large file based on presence of a certain character and would like to use StreamReader and ReadBlock - below is my code.

But I get error

Offset and length were out of bounds for the array or count is greater than the number of elements from index to the end of the source collection.

I am not sure what is wrong... Can you help. Thanks ahead!

0 投票
2 回答
49 浏览

c - 从客户端到服务器程序的 I/O 通信读写

所以我正在玩弄端口和客户端/服务器通信的想法。

我有一个 server.c 程序,它可以打开一个端口,打开一个监听描述符,并在接收到连接后,派生一个孩子来处理与连接客户端的通信。我有一个接受 5 个命令行参数的 client.c 程序。基本上前 3 个参数是发送到服务器的练习字符串,第 4 个是主机名,第 5 个是端口号。

到目前为止,将这两者连接起来效果很好,但是,当客户端尝试将 3 个不同的字符串(argv[1]、argv[2] 和 argv[3])写入 server.c 时,server.c 似乎只是能够读取第一个然后它似乎被卡住并且即使客户端将完成将所有字符串写入通信文件描述符也不会继续进行其他读取。我被困了 4 个多小时,试图找出一个简单的练习程序来更好地学习服务器和客户端。我不想再迷路了,所以我希望有人能给我任何关于如何处理这个问题或我做错了什么的建议。

客户端.c

服务器.c

0 投票
1 回答
34 浏览

wordpress - Wordpress - 插件名称?

adblock 工作显示看起来像图片 图像

并且当adblock不起作用时,显示广告,谢谢!

0 投票
2 回答
109 浏览

c - 通过 C 中的 TCP 通信,如何在不知道有关数据的任何先验信息的情况下指示停止为请求调用 read()?

我目前正在用 C 语言编写一个服务器,该服务器使用 TCP 通过套接字进行通信。客户端应该发送 {filename\n} + {file contents\n},服务器将存储该信息,然后发送成功响应。但是,我们不能确定客户端实际上会在结构化协议中发送正确的信息。

通常在更简单的情况下,我们知道之前要发送的指定字节数,并且可以等到达到指定的字节数。在这种情况下,我们不这样做,目前代码如下所示:

因此,我们遇到了一个巨大的问题:我们如何向 c 中的 read() 函数表明我们已经读取了之前调用的所有信息并且我们不应该再次调用它?

read() 函数会阻塞,直到有字节要通过服务器读取。但是,在我们的模型中,如果由于计数不足而继续尝试读取并且缓冲区中没有任何内容,我们将永远等待。

关于如何在另一个 read() 调用之前指示,没有任何关于传入消息及其结构的先前信息,我们可以从 while 循环中中断并停止尝试从套接字读取的任何想法?