【问题标题】:node.js/random access with 1024KBnode.js/随机访问 1024KB
【发布时间】:2014-07-13 13:18:33
【问题描述】:

我为 node.js 使用random access 包。

当我发送 100Kb 大小的块时,一切正常。但是当我发送大小为 1024kb 的块时,我看到随机访问包只写入第一个块,而忽略其他块。

这个问题已知吗?没有这个包如何支持随机访问?

【问题讨论】:

    标签: node.js random-access


    【解决方案1】:

    听起来像是那个特定模块的错误。

    但是节点确实有一个built-in wayfs.read/fs.writeposition 参数)用于写入/读取特定偏移量。您可以尝试直接使用它。

    【讨论】:

    • 但是我之前需要知道文件大小的问题,不是吗?
    • 如果您写入的文件位置超出文件末尾,则空字节将用于填充文件末尾和您写入的文件位置之间的任何空格。
    • 好的,但是我的块是同步到达的。所以对于 2600KB 的文件,我可以先得到第三部分(2048KB-2600KB),然后是第一部分和第二部分。另外,我不知道文件的大小。好像有问题。。我现在试了一下,文件中有很多nul字符。
    • 对,但在某些时候,您将填写第一部分和第二部分,覆盖那些空字节。我不明白为什么只要有偏移量就需要知道文件的大小。
    • 我尝试下面的代码,对于 2600KB,它给了我 800KB 的文件,带有 nul 字符:var buffer = fs.readFileSync(returnFilePath(file) + start); fs.open(returnFilePath(file) + "_part", 'w+',function (err, fd){ fs.writeSync(fd, buffer, 0, buffer.length, start); fs.closeSync(fd); ;
    猜你喜欢
    • 1970-01-01
    • 2013-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-16
    • 1970-01-01
    • 1970-01-01
    • 2016-06-07
    相关资源
    最近更新 更多