java怎样在服务器上创建文件夹
可以FTP方式
准备条件:java实现ftp上传用到了commons-net-33jar包
首先建立ftphost连接
public boolean connect(String path, String addr, int port, String username, String password) {
try {
//FTPClient ftp = new FTPHTTPClient(addr, port, username, password);
ftp = new FTPClient();
int reply;
ftpconnect(addr);
Systemoutprintln("连接到:" + addr + ":" + port);
Systemoutprint(ftpgetReplyString());
reply = ftpgetReplyCode();
if (!FTPReplyisPositiveCompletion(reply)) {
ftpdisconnect();
Systemerrprintln("FTP目标服务器积极拒绝");
Systemexit(1);
return false;
}else{
ftplogin(username, password);
ftpenterLocalPassiveMode();
ftpsetFileType(FTPClientBINARY_FILE_TYPE);
ftpchangeWorkingDirectory(path);
Systemoutprintln("已连接:" + addr + ":" + port);
return true;
}
} catch (Exception ex) {
exprintStackTrace();
Systemoutprintln(exgetMessage());
return false;
}
}
然后再利用ftpclient的makeDirectory方法创建文件夹
public void createDir(String dirname){
try{
ftpmakeDirectory(dirname);
Systemoutprintln("在目标服务器上成功建立了文件夹: " + dirname);
}catch(Exception ex){
Systemoutprintln(exgetMessage());
}
}
断开host连接
public void disconnect(){
try {
ftpdisconnect();
} catch (IOException e) {
eprintStackTrace();
}
}
最后是程序的调用方法
public static void main(String[] args) {
FtpUploadTest ftpupload = new FtpUploadTest();
if(ftpuploadconnect("", "172398x", 20, "administrator", "abc@123")){
ftpuploadcreateDir("/UPLOAD");
ftpuploaddisconnect();
}
}
一般都是生成在项目路径下,很少生成在tomcat路径下的,增加tomcat服务器的负担,
可以通过“ 类名classgetResource("")getPath()”获取到文件的绝对路径,之后通过“FileOutputStream”创建文件实例,之后过“OutputStreamWriter”流的形式进行存储,举例:
OutputStreamWriter pw = null;//定义一个流
String path = XMLSclassgetResource("")getPath()“;
pw = new OutputStreamWriter(new FileOutputStream(path ),"GBK");//确认流的输出文件和编码格式,此过程创建了“testtxt”实例
pwwrite("我是要写入到记事本文件的内容");//将要写入文件的内容,可以多次write
pwclose();//关闭流
备注:文件流用完之后必须及时通过close方法关闭,否则会一直处于打开状态,直至程序停止,增加系统负担。
如果服务器开通了ftp服务,你的客户端可以实现一个ftp的客户端,通过ftp服务将文件上传到服务器的指定目录下,可以使用orgapachecommonsnetftpFTPClient这个类去实现,非常的简单,网上有很多现成的代码可以用
0条评论