JSch - 解释 SCP 流读取
JSch - Explaining SCP stream reading
我很难理解 JSch 库中的示例代码。
例如,我想了解 this code(scpFrom 的示例)。我不明白第 56 行声明的那个缓冲区是如何工作的。该缓冲区如何包含例如读取、写入、执行标志、文件大小和文件名的前 7 个字符?我以为当我用流读取文件时,我正在读取该文件的内容,而不是它的文件名等...
也许我根本无法阅读 Java 文档。我真的被这些例子弄糊涂了,当我连例子都看不懂的时候我不想使用一些库:)
你能建议我应该阅读什么或者该流的记录内容在哪里吗?
对我来说另一颗明珠是第 77 行,该代码如何获得文件大小? 0 * 10L + buff 中的第一个字符 - 字符 0 ?我只是不明白...
谢谢大家,抱歉我的英语不好。
该代码实现了 SCP 协议。所以流表示协议流,而不仅仅是文件内容。
主要的 SCP 协议命令之一是 C
,用于启动文件传输。
C
命令的语法为:
C<mode> <size> <name>
这是一个 human-readable 字符串。您引用的代码解析字符串。
另见 Explanation for SCP protocol implementation in JSch library。
我很难理解 JSch 库中的示例代码。
例如,我想了解 this code(scpFrom 的示例)。我不明白第 56 行声明的那个缓冲区是如何工作的。该缓冲区如何包含例如读取、写入、执行标志、文件大小和文件名的前 7 个字符?我以为当我用流读取文件时,我正在读取该文件的内容,而不是它的文件名等...
也许我根本无法阅读 Java 文档。我真的被这些例子弄糊涂了,当我连例子都看不懂的时候我不想使用一些库:)
你能建议我应该阅读什么或者该流的记录内容在哪里吗?
对我来说另一颗明珠是第 77 行,该代码如何获得文件大小? 0 * 10L + buff 中的第一个字符 - 字符 0 ?我只是不明白...
谢谢大家,抱歉我的英语不好。
该代码实现了 SCP 协议。所以流表示协议流,而不仅仅是文件内容。
主要的 SCP 协议命令之一是 C
,用于启动文件传输。
C
命令的语法为:
C<mode> <size> <name>
这是一个 human-readable 字符串。您引用的代码解析字符串。
另见 Explanation for SCP protocol implementation in JSch library。