import java.io.*;
import java.net.*;
public class Client {
public static void main
(String[] args
) { try {
System.
out.
println("簡易檔案傳送...");
int port
= Integer.
parseInt(args
[1]);
System.
out.
printf("遠端主機: %s%n", remoteHost
); System.
out.
printf("遠端主機連接埠: %d%n", port
); System.
out.
printf("傳送檔案: %s%n", file.
getName());
System.
out.
println("連線成功!嘗試傳送檔案....");
printStream.println(file.getName());
System.
out.
print("OK! 傳送檔案....");
int readin;
while((readin = inputStream.read()) != -1) {
printStream.write(readin);
}
printStream.flush();
printStream.close();
inputStream.close();
skt.close();
System.
out.
println("\n檔案傳送完畢!"); }
e.printStackTrace();
}
}
}
aW1wb3J0IGphdmEuaW8uKjsKaW1wb3J0IGphdmEubmV0Lio7CgpwdWJsaWMgY2xhc3MgQ2xpZW50IHsKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHsgICAgICAgIAogICAgICAgIHRyeSB7IAogICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIuewoeaYk+aqlOahiOWCs+mAgS4uLiIpOyAKCiAgICAgICAgICAgIFN0cmluZyByZW1vdGVIb3N0ID0gYXJnc1swXTsKICAgICAgICAgICAgaW50IHBvcnQgPSBJbnRlZ2VyLnBhcnNlSW50KGFyZ3NbMV0pOwogICAgICAgICAgICBGaWxlIGZpbGUgPSBuZXcgRmlsZShhcmdzWzJdKTsgCiAgICAgICAgICAgIAogICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50Zigi6YGg56uv5Li75qmfOiAlcyVuIiwgcmVtb3RlSG9zdCk7IAogICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50Zigi6YGg56uv5Li75qmf6YCj5o6l5Z+gOiAlZCVuIiwgcG9ydCk7CiAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRmKCLlgrPpgIHmqpTmoYg6ICVzJW4iLCBmaWxlLmdldE5hbWUoKSk7CgogICAgICAgICAgICBTb2NrZXQgc2t0ID0gbmV3IFNvY2tldChyZW1vdGVIb3N0LCBwb3J0KTsgCgogICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIumAo+e3muaIkOWKn++8geWYl+ippuWCs+mAgeaqlOahiC4uLi4iKTsKCiAgICAgICAgICAgIFByaW50U3RyZWFtIHByaW50U3RyZWFtID0gCiAgICAgICAgICAgICAgICBuZXcgUHJpbnRTdHJlYW0oc2t0LmdldE91dHB1dFN0cmVhbSgpKTsgCiAgICAgICAgICAgIHByaW50U3RyZWFtLnByaW50bG4oZmlsZS5nZXROYW1lKCkpOyAKCiAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnQoIk9LISDlgrPpgIHmqpTmoYguLi4uIik7IAogICAgICAgICAgICAKICAgICAgICAgICAgQnVmZmVyZWRJbnB1dFN0cmVhbSBpbnB1dFN0cmVhbSA9IAogICAgICAgICAgICAgICAgbmV3IEJ1ZmZlcmVkSW5wdXRTdHJlYW0oIAogICAgICAgICAgICAgICAgICAgICAgICBuZXcgRmlsZUlucHV0U3RyZWFtKGZpbGUpKTsgCgogICAgICAgICAgICBpbnQgcmVhZGluOyAKICAgICAgICAgICAgd2hpbGUoKHJlYWRpbiA9IGlucHV0U3RyZWFtLnJlYWQoKSkgIT0gLTEpIHsgCiAgICAgICAgICAgICAgICAgcHJpbnRTdHJlYW0ud3JpdGUocmVhZGluKTsgCiAgICAgICAgICAgICAgICAgVGhyZWFkLnlpZWxkKCk7CiAgICAgICAgICAgIH0gCgogICAgICAgICAgICBwcmludFN0cmVhbS5mbHVzaCgpOwogICAgICAgICAgICBwcmludFN0cmVhbS5jbG9zZSgpOwogICAgICAgICAgICBpbnB1dFN0cmVhbS5jbG9zZSgpOyAKICAgICAgICAgICAgCiAgICAgICAgICAgIHNrdC5jbG9zZSgpOwogICAgICAgICAgICAKICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJcbuaqlOahiOWCs+mAgeWujOeVou+8gSIpOyAKICAgICAgICB9IAogICAgICAgIGNhdGNoKEV4Y2VwdGlvbiBlKSB7IAogICAgICAgICAgICBlLnByaW50U3RhY2tUcmFjZSgpOyAKICAgICAgICB9IAogICAgfSAKfQ==