在操作SFTP时,中文乱码

 

在用 jsch 操作 SFTP的时候,如果jar包版本时3-5,

都不允许修改编码.

jar包默认是UTF-8.

但中文都会乱码.

我们设置编码,是没有效果的.

这时候有朋友就采用换jar包的方式.

让版本不是3-5的.

其实可以通过方式来修改版本号,

从而修改编码.

//利用反射修改版本编号
Class c = ChannelSftp.class;
f = c.getDeclaredField("server_version");
f.setAccessible(true);
f.set(chSftp, 2);
chSftp.setFilenameEncoding("gbk");

 

Vector ls = chSftp.ls(path);

LsEntry是他的内部类.

 

 

---工作中记录.

 

 

 

 

你可能感兴趣的:(工作经验)