Net::SFTP 传输模式(二进制与文本)
有没有办法在 Ruby 中使用 Net::SFTP 库 (API 链接)将传输模式设置为二进制?不幸的是,我使用的是 Windows 系统,并且正在将 UTF-8 文件上传到 Unix 系统。 ruby 库显然使用 Text 作为默认传输模式,导致我的编码出现 ANSI 乱码。如果我可以强制使用二进制模式,UTF-8 应该保持不变。
谢谢
Is there a way using the Net::SFTP Library in Ruby (API Link) to set the Transfer Mode to Binary? I am unforunately on a windows system and am uploading a UTF-8 file to a Unix system. The ruby library apparently using Text as the default Transfer Mode and causing my encoding to get garbled with ANSI. If I can force Binary mode the UTF-8 should remain in tact.
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我想我找到了解决方法。
之前,我们做了这样的事情:
我们将其更改为使用 StringIO 对象,如下所示:
使用上传!方法似乎尊重编码,因为它只是复制字节。
希望有帮助。
I think I found a workaround.
Before, we were doing something like this:
We changed this to use a StringIO object, like so:
Using the upload! method seems to respect the encoding as it just copies the bytes.
Hope that helps.