精华内容
下载资源
问答
  • JAVA中生成xml文件到指定路径和上传ftp服务器到指定路径的方法。
  • winform实现FTP上传、下载、删除文件。自己写的Demo,亲测可用!
  • JAVA上传文件FTP

    千次阅读 2019-06-24 11:25:08
    需求说明:将指定文件上传FTP,上传成功后修改文件名。 获取文件名及路径(这里是从数据库获取,所以前面的代码就不CV了) /** * 测试上传 * @param map 从数据库获取到的文件信息 (包含文件路径FILE_...

    需求说明:将指定文件上传到FTP,上传成功后修改文件名。

    获取文件名及路径(这里是从数据库获取,所以前面的代码就不CV了)

    	/**
    	 * 测试上传
    	 * @param map 从数据库获取到的文件信息 (包含文件路径FILE_PATH 文件类型FILE_TYPE等信息)
    	 */
    	 public void testUpdFtpFile(Map<String,Object> map){
    		 /*上传附件到FTP*/
    		 FileInputStream inputStream = null;
    		 try {
    		    //找到要上传的文件 
    		 	String originfilename = "E:\\work\\files\\"+map.get("FILE_PATH").toString();
    		 	//转成流
    		 	inputStream = new FileInputStream(originfilename);
    		    //上传后的文件名+文件类型						
    		    String ftpName = "上传到FTP后的文件名."+map.get("FILE_TYPE");
    		 	boolean updFtpFile = FtpClientFile.uploadFile(ftpName,inputStream);
    		 	if(updFtpFile){
    		 		//打印下日志
    		 		System.out.println(("=======文件已上传到FTP========"));
    		 	}
    		 } catch (Exception e) {
    		 	throw new BusinessException("附件上传失败!");
    		 }
    	 }

    FtpClientFile工具类方法

    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.IOException;
    
    import org.apache.commons.net.ftp.FTPClient;
    import org.apache.commons.net.ftp.FTPFile;
    import org.apache.commons.net.ftp.FTPReply;
    
    import com.google.gson.JsonArray;
    
    /**
     * ftp 上传文件
     * FTPClient commons.net 3.0.1版本
     * @author Lenovo
     *
     */
    public class FtpClientFile {
    	
    	private static final String hostname = "10.xx.xx.xx" ;//FTP IP
    	
    	private static final int port = 21;//FTP 端口号
    	
    	private static final String username = "ftpName";//FTP 登录账号
       
    	private static final String password = "ftpPsd"; //FTP 登录密码
    	
    	private static final String pathname = "/";//FTP 工作路径
    	
    	
    	
    	/**
    	 * 上传文件(可供Action/Controller层使用)
    	 * @param fileName 上传到FTP服务器后的文件名称
    	 * @param inputStream 输入文件流
    	 * @return
    	 */
    	 public static boolean uploadFile(String fileName,FileInputStream inputStream){
    		 
    	 boolean flag = false;
    	 FTPClient ftpClient = new FTPClient();
    	 //设置超时
    	 ftpClient.setConnectTimeout(60*60*1000);
    	 //设置编码
    	 ftpClient.setControlEncoding("UTF-8");
    	 try {
    		 //连接FTP服务器
    		 ftpClient.connect(hostname, port);
    		 //登录FTP服务器
    		 ftpClient.login(username, password);
    		 //是否成功登录FTP服务器	
    		 int replyCode = ftpClient.getReplyCode();
    		 if(!FTPReply.isPositiveCompletion(replyCode)){
    			 return flag;
    	 		}
    		 System.out.println("===========登录FTP成功了==========");
    		 ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
    		 //切换路径 创建路径
    		 ftpClient.makeDirectory(pathname);
    		 ftpClient.changeWorkingDirectory(pathname);
    		 ftpClient.enterLocalPassiveMode();
    		 //设置缓冲
    		 ftpClient.setBufferSize(1024 * 1024 * 20);
    		 //保持连接
    		 ftpClient.setKeepAlive(true);
    		 boolean a = ftpClient.storeFile(new String(fileName.getBytes("utf-8"),"iso-8859-1"), inputStream);
    		 if(a){
    			 System.out.println("===========创建文件成功=============="+a);
    				 String fileName2 = fileName+"AAA";
    				 boolean status = ftpClient.rename(fileName, fileName2);
    				 if(status)
    				 System.out.println("===========修改文件名称成功=============="+status);
    			 }
    		 inputStream.close();
    		 ftpClient.logout();
    		 flag = true;
    	 	} catch (Exception e) {
    	 		e.printStackTrace();
    	 	} finally{
    	 		if(ftpClient.isConnected()){
    	 			try {
    	 				ftpClient.disconnect();
    	 			} catch (IOException e) {
    	 				e.printStackTrace();
    	 			}
    	 		}
    	 	}
    	 	return flag;
    	 	
    	 }
    	
    	 
    	 	
    	/* public static void main(String[] args) {
    		 String originfilename = "C:\\Users\\Lenovo\\Desktop\\xx.txt";
    		 FileInputStream inputStream;
    		 try {
    			inputStream = new FileInputStream(new File(originfilename));
    			boolean a = uploadFile("xx.txt","/104/",inputStream);
    			System.out.println("上传文件成功============"+a);
    		 } catch (FileNotFoundException e) {
    			e.printStackTrace();
    		 }
    	}*/
    	 
    	 
    }
    

    上传文件到FTP时 注意:是否有权限登录服务器/上传文件等操作。

    默认在浏览器输入自己的ftp地址访问下看看 ftp://10.xx.xx.xx:端口号 登录看看

     

     

     

     

    展开全文
  • C语言实现FTP上传文件(支持windows和linux和ARM的交叉编译环境)
  • 使用FTP上传文件 利用FTP和云服务器进行文件传输首先需要 云服务器配置好FTP环境后,您可以通过: 1.资源管理器 2.第三方软件 与服务器进行文件传输 与服务器进行文件传输时首先要确保服务器安全组开放了21端口...

    使用FTP上传文件

    利用FTP和云服务器进行文件传输首先需要 云服务器配置好FTP环境后,您可以通过:

    1.资源管理器

    2.第三方软件

    与服务器进行文件传输

    与服务器进行文件传输时首先要确保服务器安全组开放了21端口(入站规则为TCP21号)

     

    1.通过资源管理器进行文件传输

    打开电脑自带的资源管理器。 在上方输入ftp://主机IP

    输入用户名和密码验证通过后即可完成连接

    如果连接过程中弹出错误窗口时 通过“开始”-“控制面板”打开控制面板

    找到“网络和Internet”并点击

    点击Internet选项

    在弹出的窗口中找到高级并点击,在设置的勾选框中取消勾选“使用被动FTP”,点击“应用”后“确定”

    之后再重新试一下即可连接成功

     

    2.使用第三方软件进行文件传输

    这里以CuteFTP 9.0为例进行示范 首先去下载CuteFTP,下载安装完成后,打开软件,通过“文件”-“新建”-“FTP站点”,在弹出的窗口进行一些设置: (1)在“一般”输入相应的信息,登录方法为“普通” (2)在“类型”选择数据连接类型为“使用PORT”,端口为21(如果不小心关闭了也可在“站点管理器”找到要更改的云服务器右键-“属性”重新打开)

    点击连接即可连接成功,左侧为本地文件,右侧为服务器文件,鼠标拖动(或右键-上载/下载)即可完成上载和下载

     

    3.我的热门文章推荐

    4.我的视频类文章推荐

     
    展开全文
  • linux下C语言实现FTP上传文件源码 一个函数搞定FTP上传 直接编译可用 int main() { ftp_upload("ipx.xxx.xxx.xxx",21,"username","password","./main.c","upload_name"); return 0; }
  • java FTP上传文件(进度条显示进度)
  • Qt5.8用ftp实现上传和下载文件,并带进度条显示
  • java编写的ftp文件实时监控下载上传

    热门讨论 2016-03-22 17:06:13
    也可以监控本地文件夹,把文件夹内新产生的文件或者文件夹整体上传ftp服务器,上传后可删除本地文件夹内的数据。 是监控服务器还是监控本地文件夹,通过配置指定。 压缩包里是源代码和所需的jar包,还包括一个已经...
  • 用C#实现文件上传FTP,从ftp下载,读取文件
  • java实现文件上传ftp服务器功能

    千次阅读 2017-03-09 16:55:34
    文件上传至服务器源码,我个人搭建的是ftp服务器。

     java文件上传至ftp服务器

     

            废话不多说,直接上代码,这里提供两种方法,此程序运行需要下载apache-commons-net.jar包,可以使用maven仓库下载,也可以使用http://www.java2s.com/搜索下载。

    第一种方法:使用下载apache-commons-net.jar实现上传功能,未实现下载功能,下面第二种方法实现下载功能

    package www.zy.email;
    
    import java.io.File;
    import java.io.FileInputStream;
    
    import org.apache.commons.net.ftp.FTPClient;
    import org.apache.commons.net.ftp.FTPReply;
    
    public class FTPUtil {
        private  FTPClient ftp;      
        /**  
         *   
         * @param path 上传到ftp服务器哪个路径下     
         * @param addr 地址  
         * @param port 端口号  
         * @param username 用户名  
         * @param password 密码  
         * @return  
         * @throws Exception  
         */    
        private  boolean connect(String path,String addr,int port,String username,String password) throws Exception {      
            boolean result = false;      
            ftp = new FTPClient();      
            int reply;      
            ftp.connect(addr,port);      
            ftp.login(username,password);      
            ftp.setFileType(FTPClient.BINARY_FILE_TYPE);      
            reply = ftp.getReplyCode();      
            if (!FTPReply.isPositiveCompletion(reply)) {      
                ftp.disconnect();      
                return result;      
            }      
            ftp.changeWorkingDirectory(path + "\\file");      
            result = true;      
            return result;      
        }      
        /**  
         *   
         * @param file 上传的文件或文件夹  
         * @throws Exception  
         */    
        private void upload(File file) throws Exception{      
            if(file.isDirectory()){           
                ftp.makeDirectory(file.getName());                
                ftp.changeWorkingDirectory(file.getName());      
                String[] files = file.list();             
                for (int i = 0; i < files.length; i++) {      
                    File file1 = new File(file.getPath()+"\\"+files[i] );      
                    if(file1.isDirectory()){      
                        upload(file1);      
                        ftp.changeToParentDirectory();      
                    }else{                    
                        File file2 = new File(file.getPath()+"\\"+files[i]);      
                        FileInputStream input = new FileInputStream(file2);      
                        ftp.storeFile(file2.getName(), input);      
                        input.close();                            
                    }                 
                }      
            }else{      
                File file2 = new File(file.getPath());      
                FileInputStream input = new FileInputStream(file2);      
                ftp.storeFile(file2.getName(), input);      
                input.close();        
            }      
        } 
       
       public static void main(String[] args) throws Exception{    
    		FTPUtil t = new FTPUtil();
    		boolean abc = t.connect("","IP地址", 端口号, "服务器用户名", "服务器密码");
    		System.out.println("是否连接上ftp服务器:" + abc);
    		File file = new File("F://ftp//file//123.txt");
    		if(file.exists()){
    			t.upload(file);  
    			file.delete();
    			System.out.println("上传的文件已经被删除!");
    		}else{
    			System.out.println("不存在上传的文件!请等待!");
    		}
    		System.out.println("上传流程结束");
       }   
    }
    

    第二种方法:使用maven依赖来实现上传下载功能

    1、添加maven依赖

    <dependencies>
    	<dependency>
    	     <groupId>commons-net</groupId>
    	     <artifactId>commons-net</artifactId>
                 <version>3.3</version>
          </dependency>	
      </dependencies>
    2、上传下载功能

    package com.www.common.utils;
    
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    
    import org.apache.commons.net.ftp.FTP;
    import org.apache.commons.net.ftp.FTPClient;
    import org.apache.commons.net.ftp.FTPFile;
    import org.apache.commons.net.ftp.FTPReply;
    
    /**
     * ftp上传下载工具类
     * <p>Title: FtpUtil</p>
     * <p>Description: </p>
     * <p>Company: www.iwiteks.com</p> 
     * @author	spirits
     * @date	2017年11月1日下午8:11:51
     * @version 1.0
     */
    public class FtpUtil {
    
    	/** 
    	 * Description: 向FTP服务器上传文件 
    	 * @param host FTP服务器hostname 
    	 * @param port FTP服务器端口 
    	 * @param username FTP登录账号 
    	 * @param password FTP登录密码 
    	 * @param basePath FTP服务器基础目录
    	 * @param filePath FTP服务器文件存放路径。例如分日期存放:/2015/01/01。文件的路径为basePath+filePath
    	 * @param filename 上传到FTP服务器上的文件名 
    	 * @param input 输入流 
    	 * @return 成功返回true,否则返回false 
    	 */  
    	public static boolean uploadFile(String host, int port, String username, String password, String basePath,
    			String filePath, String filename, InputStream input) {
    		boolean result = false;
    		FTPClient ftp = new FTPClient();
    		try {
    			int reply;
    			ftp.connect(host, port);// 连接FTP服务器
    			// 如果采用默认端口,可以使用ftp.connect(host)的方式直接连接FTP服务器
    			ftp.enterLocalPassiveMode();
    			ftp.login(username, password);// 登录
    			reply = ftp.getReplyCode();
    			if (!FTPReply.isPositiveCompletion(reply)) {
    				ftp.disconnect();
    				return result;
    			}
    			//切换到上传目录
    			if (!ftp.changeWorkingDirectory(basePath+filePath)) {
    				//如果目录不存在创建目录
    				String[] dirs = filePath.split("/");
    				String tempPath = basePath;
    				for (String dir : dirs) {
    					if (null == dir || "".equals(dir)) continue;
    					tempPath += "/" + dir;
    					if (!ftp.changeWorkingDirectory(tempPath)) {
    						if (!ftp.makeDirectory(tempPath)) {
    							return result;
    						} else {
    							ftp.changeWorkingDirectory(tempPath);
    						}
    					}
    				}
    			}
    			//设置上传文件的类型为二进制类型
    			ftp.setFileType(FTP.BINARY_FILE_TYPE);
    			//上传文件
    			if (!ftp.storeFile(filename, input)) {
    				return result;
    			}
    			input.close();
    			ftp.logout();
    			result = true;
    		} catch (IOException e) {
    			e.printStackTrace();
    		} finally {
    			if (ftp.isConnected()) {
    				try {
    					ftp.disconnect();
    				} catch (IOException ioe) {
    				}
    			}
    		}
    		return result;
    	}
    	
    	/** 
    	 * Description: 从FTP服务器下载文件 
    	 * @param host FTP服务器hostname 
    	 * @param port FTP服务器端口 
    	 * @param username FTP登录账号 
    	 * @param password FTP登录密码 
    	 * @param remotePath FTP服务器上的相对路径 
    	 * @param fileName 要下载的文件名 
    	 * @param localPath 下载后保存到本地的路径 
    	 * @return 
    	 */  
    	public static boolean downloadFile(String host, int port, String username, String password, String remotePath,
    			String fileName, String localPath) {
    		boolean result = false;
    		FTPClient ftp = new FTPClient();
    		try {
    			int reply;
    			ftp.connect(host, port);
    			// 如果采用默认端口,可以使用ftp.connect(host)的方式直接连接FTP服务器
    			ftp.login(username, password);// 登录
    			reply = ftp.getReplyCode();
    			if (!FTPReply.isPositiveCompletion(reply)) {
    				ftp.disconnect();
    				return result;
    			}
    			ftp.changeWorkingDirectory(remotePath);// 转移到FTP服务器目录
    			FTPFile[] fs = ftp.listFiles();
    			for (FTPFile ff : fs) {
    				if (ff.getName().equals(fileName)) {
    					File localFile = new File(localPath + "/" + ff.getName());
    
    					OutputStream is = new FileOutputStream(localFile);
    					ftp.retrieveFile(ff.getName(), is);
    					is.close();
    				}
    			}
    
    			ftp.logout();
    			result = true;
    		} catch (IOException e) {
    			e.printStackTrace();
    		} finally {
    			if (ftp.isConnected()) {
    				try {
    					ftp.disconnect();
    				} catch (IOException ioe) {
    				}
    			}
    		}
    		return result;
    	}
    	
    	public static void main(String[] args) {
    		try {  
    	        FileInputStream in=new FileInputStream(new File("D:\\temp\\image\\gaigeming.jpg"));  
    	        boolean flag = uploadFile("192.168.25.133", 21, "ftpuser", "ftpuser", "/home/ftpuser/www/images","/2015/01/21", "gaigeming.jpg", in);  
    	        System.out.println(flag);  
    	    } catch (FileNotFoundException e) {  
    	        e.printStackTrace();  
    	    }  
    	}
    }
    

    可以作为工具类使用



    展开全文
  • QT FTP上传文件

    千次阅读 2019-08-06 13:58:07
    QT FTP上传文件两台电脑通过网线建立本地连接,保证网关在同一段;服务器端打开ftp;客户端网页测试远程访问;客户端cmd测试远程访问;客户端程序测试远程访问。 两台电脑通过网线建立本地连接,保证网关在同一段; ...

    两台电脑通过网线建立本地连接,保证网关在同一段;

    在这里插入图片描述

    服务器端打开ftp;

    控制面板→程序→启用或关闭windows功能→windows功能→Internet信息服务
    启用“FTP服务”FTP扩展性” IIS管理控制台”

    在这里插入图片描述
    开始屏幕的搜索中输入“IIS”,然后点击打开“IIS管理器”
    打开“IIS管理器”后,在左栏的“网站”上点击右键,打开“添加FTP站点”
    然后按照提示填写站点信息
    点击“下一步”,按照下图提示,设置“绑定和SSL设置”,在“IP地址”处,可以用内网IP也可以用外网IP,访客自然也就根据你的IP设定来决定;
    点击“下一步”,设置“身份验证和授权信息”
    然后在本机浏览器地址栏中输入“ftp://填写的IP”测试一下

    客户端网页测试远程访问;

    客户端(另一台电脑)浏览器地址栏中输入“ftp://填写的IP”测试一下

    客户端cmd测试远程访问;

    win+r打开运行窗口,输入cmd
    回车打开cmd命令窗口
    cmd命令中输入:ftp回车
    回车切换至ftp命令窗口,输入命令:open,回车提示:到
    到即所要连接测试的ftp地址,我们输入:IP 22
    即:ip地址+空格+端口号,没有+号
    回车后弹出用户一行,输入ftp的用户名后回车,输入ftp用户名对应的密码
    输入密码后回车,如果提示,user logged in就说么ftp创建无问题

    客户端程序测试远程访问。

    新建程序,添加ftpclass.cpp、ftpclass.h,复制main.cpp内容到程序入口函数
    注意:/项目-属性-常规-字符集-使用多字节字符集/
    在这里插入图片描述

    //main.cpp
    #include "stdafx.h"
    #include "ftpclass.h"
    
    void main()
    {
    	printf("------- 开始测试!------\n");
    	printf("01--创建连接 %d\n", FtpClass::createConnection());
    	printf("02--打开目标ftp %d\n", FtpClass::createTable());	
    	
    	/*可以读取ini内参数
    	FtpClass::ftp_Ip = TEXT("Ini读取");
    	FtpClass::ftp_Port = TEXT("Ini读取");
    	FtpClass::ftp_User = TEXT("Ini读取");
    	FtpClass::ftp_Password = TEXT("Ini读取");
    	FtpClass::ftp_Fixed_Path = TEXT("Ini读取");*/
    	
    	printf("03--创建文件夹 %d\n", FtpClass::createFolder("自动生成目录1","自动生成目录2","自动生成目录3"));	
    	/*上传目标路径*/
    
    	printf("04--上传文件 %d\n", FtpClass::insert( "D:/a.txt", "b.txt"));
    	/*本机文件需要上传文件*/  /*上传后文件名称,可以和本地文件名称不一样,类型最好别换*/
    	
    	printf("05--关闭通讯 %d\n", FtpClass::createClose());
    	printf("------ 结束测试!------\n");
    	
    	return ;
    }
    
    
    //ftpclass.h
    /*项目-属性-常规-字符集-使用多字节字符集*/
    /*wininet.lib、shlwapi.lib可以直接添加到附加依赖项*/
    /*BOOL_VERIFY、NULL_VERIFY 程序结束判断*/
    
    
    #pragma once
    
    #pragma comment(lib,"wininet.lib")
    #pragma comment(lib,"shlwapi.lib")
    
    #define  BOOL_VERIFY(emStatus_bool,switch_bool) \
    if (emStatus_bool == true)\
    {return true;}\
    else{\
    if (switch_bool == 3) printf("      FTP_03_err:创建文件夹失败!%d\n"); \
    if (switch_bool == 4) printf("      FTP_04_err:上传文件失败!\n");     \
    if (switch_bool == 5) printf("      FTP_05_err:关闭窗口句柄失败!\n"); \
    return false;\
    }
    
    
    #define  NULL_VERIFY(emStatus_null,switch_null) \
    if (emStatus_null != NULL)\
    {return true;}\
    else{\
    if (switch_null == 1) {printf("      FTP_01_err:打开通讯错误 Error:%d\n", GetLastError());}\
    if (switch_null == 2) {printf("      FTP_02_err:建立连接错误 Error:%d\n", GetLastError());}\
    return false;\
    }
    
    
    #include "stdafx.h"//没用
    #include <afxinet.h>//MFC相关
    #include "wininet.h"//调用FTP相关类
    #include "shlwapi.h"//调用文件操作相关类
    
    
    class FtpClass
    {
    public:	
    	/*ini读取变量*/
    	static CString ftp_Ip;//目标ip
    	static CString ftp_Port;//目标端口
    	static CString ftp_User;//目标账户
    	static CString ftp_Password;//目标密码
    	static CString ftp_Fixed_Path;//目标固定路径
    	static CString ftp_Free_Path;//目标自己生成路径
    	
    	 /*全局变量*/
    	static BOOL  pRes;
    	static HINTERNET hInternet;
    	static HINTERNET hConnect;
    	
    	/*全局函数*/
    	static bool createConnection();											//创建一个连接
    	static bool createTable();	
    	static bool ThreadInternetConnect(PVOID ) 
    	//打开目标ftp
    	static bool createFolder(CString temp1, CString temp2, CString temp3);  //上传文件
    	static bool insert(CString temp, CString temp1);                        //出入数据
    	static bool createClose();                                              //断开连接
    };
    
    //ftpclass.cpp
    #include "stdafx.h"
    #include "ftpclass.h"
    
    
    
    CString FtpClass::ftp_Ip = TEXT("192.168.3.104");
    CString FtpClass::ftp_Port = TEXT("21");
    CString FtpClass::ftp_User = TEXT("Administrator");
    CString FtpClass::ftp_Password = TEXT("xinxin");
    CString FtpClass::ftp_Fixed_Path = TEXT("1级固定目录/2级固定目录/3级固定目录");
    CString FtpClass::ftp_Free_Path = TEXT("自动生成目录");
    BOOL  FtpClass::pRes = false;
    HINTERNET FtpClass::hInternet = NULL;
    HINTERNET FtpClass::hConnect = NULL;
    
    
    //创建一个连接
    bool FtpClass::createConnection() {
    	/*ftp_Ip = TEXT("Ini读取");
    	ftp_Port = TEXT("Ini读取");
    	ftp_User = TEXT("Ini读取");
    	ftp_Password = TEXT("Ini读取");
    	ftp_Fixed_Path = TEXT("Ini读取");*/
    
    	hInternet = InternetOpen(NULL, INTERNET_OPEN_TYPE_DIRECT,
    		NULL, NULL, INTERNET_FLAG_NO_CACHE_WRITE);
    	NULL_VERIFY(hInternet,1);
    }
    bool FtpClass::ThreadInternetConnect(PVOID param) {
    
     // 打开http      
     hConnect = InternetConnect(hInternet, ftp_Ip, INTERNET_DEFAULT_FTP_PORT,//INTERNET_DEFAULT_FTP_PORT  第三个参数默认值21
      ftp_User, ftp_Password, INTERNET_SERVICE_FTP,
      INTERNET_FLAG_EXISTING_CONNECT || INTERNET_FLAG_PASSIVE, 0);
    
     return 1;
    }
    
    //打开目标ftp
    bool FtpClass::createTable()
    {
     /*hConnect = InternetConnect(hInternet, ftp_Ip, 25,//INTERNET_DEFAULT_FTP_PORT  第三个参数默认值21
      ftp_User, ftp_Password, INTERNET_SERVICE_FTP,
      INTERNET_FLAG_EXISTING_CONNECT || INTERNET_FLAG_PASSIVE, 0);
     NULL_VERIFY(hConnect,2);*/
     HANDLE hThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInternetConnect, (LPVOID)NULL, 0, NULL); 
     //超时3秒,如果等待结果是超时
     if (WaitForSingleObject(hThread, 3 * 1000) == WAIT_TIMEOUT) {
      TerminateThread(hThread, 0);
      CloseHandle(hThread);
      NULL_VERIFY(hConnect, 2);  
     }
     NULL_VERIFY(hConnect, 2);
    }
    
    //上传文件
    bool FtpClass::createFolder(CString temp1, CString temp2, CString temp3)
    {
    	/*新建文件件每次只能创建一级,多个需要分多次创建*/
    	pRes = false;	
    	ftp_Free_Path = "";
    	ftp_Free_Path = ftp_Fixed_Path  + "/" + temp1;
    	FtpCreateDirectory(hConnect, ftp_Free_Path);
    	ftp_Free_Path = ftp_Free_Path + "/" + temp2;
    	FtpCreateDirectory(hConnect, ftp_Free_Path);
    	ftp_Free_Path = ftp_Free_Path + "/" + temp3;
    	pRes = FtpCreateDirectory(hConnect, ftp_Free_Path);
    	BOOL_VERIFY(pRes,3);
    }
    //出入数据
    bool FtpClass::insert(CString temp, CString temp1)
    {
    	pRes = false;
    	ftp_Free_Path = ftp_Free_Path + "/" +temp1;
    	pRes = FtpPutFile(hConnect, temp,/*本机文件*/
    		ftp_Free_Path,  /*TEXT("一级目录/二级目录/三级目录/a.txt"),*/
    		FTP_TRANSFER_TYPE_ASCII, 0);
    	BOOL_VERIFY(pRes,4);
    }
    //断开连接
    bool FtpClass::createClose()
    {	
    	pRes = false;
    	if (InternetCloseHandle(hConnect))
    		pRes = InternetCloseHandle(hInternet);
    	BOOL_VERIFY(pRes,5);
    }
    
    
    展开全文
  • springboot上传文件ftp服务器

    千次阅读 2019-07-29 14:38:40
    ftp服务器配置参考:...文件上传(两篇是连着的): https://blog.csdn.net/qq_40808344/article/details/86763529 https://blog.csdn.net/qq_40808344/article/details/86763575 多文件上传:https://blo...
  • VC++通过FTP上传下载文件;包含了代码实现和简易破解实用的ftp服务端;通过vc++写了一个客户端程序,含有基本的ftp上传下载功能;服务器端这里提供了一个ftp服务器,自己可以随意配置就可以;简单实用,分享!
  • Java FTP 实现跨服务器文件上传下载

    热门讨论 2013-11-19 13:44:01
    Java 程序实现的 FTP 跨服务器文件上传下载功能。
  • 将本地文件上传FTP

    千次阅读 2018-04-19 10:47:05
    import org.apache.commons.net.ftp.FTPClient; import org.apache.commons.net.ftp.FTPFile; FTPClient ftp = new FTPClient(); try {  ftp.connect(ip);  ftp.login(ftpName, ftpPassWord);  //loc
  • springboot 将文件上传ftp文件服务器

    千次阅读 2020-03-12 21:56:18
    } catch (IOException e) { log.error("文件上传异常",e); return null; } return targetFile.getName(); } } //ftp工具包类 package com.van.mall.util; import lombok.Data; import lombok.extern.slf4j.Slf4j; ...
  • java上传文件FTP服务器

    万次阅读 2019-03-17 00:58:52
    前段时间,项目中使用到了上传文件FTP服务器,再此略作整理,形成一个util工具,方便日后使用。 项目代码已上传至github:https://github.com/hack-feng/ftpdemo.git 点击直接前往 首先定义一个FTP服务器和上传...
  • java使用ftp上传文件

    千次阅读 2019-03-26 09:17:08
    之前上传文件只能在服务器创建文件,但是大小始终是0。搜了以后发现是ftp的被动模式 所以修改代码 package com.cn.test; import org.apache.commons.net.ftp.FTP; import org.apache.commons.net.ftp.FTPClient;...
  • 工作中,为了减轻人工工作量,有时需要做一些自动传输文件操作。这本身不是什么难事,可以通过各种编程语言...一、用cmd的ftp命令上传文件: 通过上面简单的命令就可以将我的文件D:\test.png上传FTP服务器。 ...
  • 使用QT实现文件上传和下载----ftp服务器

    千次下载 热门讨论 2014-07-16 17:07:49
    使用QT实现文件上传和下载,服务器为FTP服务器,这是一个简单的测试源码。希望能够给初学者一定的启发。
  • java大文件上传ftp服务器带进度条显示的,进度条的显示和ftp的上传速度同步,解决了进度条显示和ftp不同步的问题
  • FTP文件上传控件(FtpUploader)

    热门讨论 2011-04-16 11:32:19
    新颖网络FTP文件上传控件是一个专门针对大文件传输而制定的解决方案。它能够帮助开发者实现文件断点续传和文件批量上传功能。特别适合有大文件上传需求的站点,例如视频文件上传,大型资源分享网站,网盘网站。与...
  • Win10搭建ftp服务器 打开控制面板 ->... 控制面板 -> 管理工具,如下打开IIS管理器 先在本地磁盘中创建一个目录用来存放FTP站点的...绑定和SSL设置:IP地址为本机ip地址(查看本地ip,在控制台输入命令ipconfig...
  • 上传图片文件FTP服务器Ajax multipart formData FTP 最近在公司接手一个图片上传的功能实现,但需要上传保存在FTP服务器长久保存。解决Tomcat下保存,重启就会清空了的问题。既然是做测试,就在自己电脑搭建一个...
  • ftp文件上传脚本(windows)

    千次阅读 2018-06-06 14:47:07
    ftp文件上传脚本(windows) 部分电脑不支持ftp命令上传文件,整理ftp上传相关批处理脚本如下: 脚本描述 1、支持2种上传模式:ftp,curl,如果用户电脑不支持ftp命令上传,需要设置为curl模式; 2、脚本启动后,...
  • 1、装包 yum -y install vsftpd systemctl enable vsftpd systemctl start vsftpd 2、登录方式 ...这里选择本地账号登录,这种方法的上传的默认目录为改用户的家...3、修改配置文件 vim /etc/vsftpd/vsftpd.conf 关闭匿...
  • Shell FTP文件上传下载

    千次阅读 2018-09-25 15:25:40
    1.上传文件ftp 创建一个shell文件:touch upload.sh 修改为可执行文件:chmod +x upload.sh 编辑:vim upload.sh,脚本内容如下 cd /user/directory/target export putfile=yyy.jar ftp -v -n ftp.xxx....
  • python实现FTP文件上传

    万次阅读 2019-06-24 17:27:50
    通过python web server端上传文件FTP服务端,上传文件夹,下载文件等 1.代码 #!/usr/bin/python # -*- coding: UTF-8 -*- from ftplib import FTP import os import sys import time import socket class ...
  • linux定时上传本地文件ftp服务器shell脚本 由于项目需求,需要写一个shell脚本,上传本地文件ftp服务器,并生成定时任务,每天都运行一次脚本,这脚本花了我2天时间…(组长对我说写不出来我帮你写…原谅我太渣...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 132,183
精华内容 52,873
关键字:

文件上传ftp地址