sftp亂碼處理問題

2021-10-04 03:16:10 字數 961 閱讀 6536

上篇講了ftp亂碼問題,好不湊巧又要sftp,關鍵是sftp又是亂碼,不過還好有我們偉大的程式設計師。直接上**

jsch jsch = new jsch();

session sshsession = jsch.getsession(config.getftpusername(), config.getftphost(), config.getftpport());

sshsession.setpassword(config.getftppassport());

properties sshconfig = new properties();

sshconfig.put("stricthostkeychecking", "no");

sshsession.setconfig(sshconfig);

sshsession.connect();

channelsftp channel = (channelsftp) sshsession.openchannel("sftp");

channel.connect();

class cl = channelsftp.class;

field f =cl.getdeclaredfield("server_version");

f.setaccessible(true);

f.set(channel, 2);

channel.setfilenameencoding("utf-8");

使用反射修改channelsftp的服務版本,然後設定編碼為utf-8,一切就美好了。

什麼?不想修改?那你看看機智的idea給你返回的什麼吧:

the encoding can not be changed for this sftp server。
當天如果你想看看你的服務版本是什麼可以使用:channel.getserverversion().

下標處理問題

下標處理問題 主要是針對於插入排序演算法寫的程式,其他情況可以借鑑這些思路。數學上或者通常意義上,下標都是從1開始的,但是在多數程式語言裡面陣列下標都是從0開始的,這就很惱火了,簡單乙個下標處理起來卻異常麻煩!請看 例如 1 典型的陣列下標越界問題 假設有個陣列 a 0 a 1 我們要用插入法排序,...

ORACLE 異常處理問題處理

create or replace procedure pro people as begin select per id into v per id from people where id i id exception when no data found then v per id 1 whe...

請求處理問題 收藏

問題描述 說有一台機器,上面有m個儲存空間。然後有n個請求,第i個請求計算時需要佔r i 個空間,儲存計算結果則需要佔據o i 個空間 其中 o i 題解 假設可以滿足所有請求,並且處理請求的順序是 r1,r2,r n 1 r n 那麼儲存完所有的請求結果後,剩餘的儲存空間為l m o i 如果假設...