ftp实现文件的上传和下载

Java 实现上传文件到FTP和从FTP下载文件 在eclipse 中创建项目,并将commons-net-3.6.jar包复制到项目中commons-net-3.6.jar:链接:https://pan.baidu.com/s/1iz0862TXljeXd-uHoJ0CvA 密码:hf50在项目中创建JAVA 类TestFtpClient,程序代码如下:package ftp_email; import java.io.FileInputSt... 阅读详情
JAVA中使用FTPClient实现文件上传下载

  在JAVA程序中,经常需要和FTP打交道,比如向FTP服务器上传文件、下载文件,本文简单介绍如何利用jakarta commons中的FTPClient(在commons-net包中)实现上传下载文件。

一、上传文件

         原理就不介绍了,大家直接看代码吧

  1. /**
  2. * Description: 向FTP服务器上传文件
  3. * @Version1.0 Jul 27, 2008 4:31:09 PM by 崔红保(cuihongbao@d-heaven.com)创建
  4. * @param url FTP服务器hostname
  5. * @param port FTP服务器端口
  6. * @param username FTP登录账号
  7. * @param password FTP登录密码
  8. * @param path FTP服务器保存目录
  9. * @param filename 上传到FTP服务器上的文件名
  10. * @param input 输入流
  11. * @return 成功返回true,否则返回false
  12. */ 
  13. publicstaticboolean uploadFile(String url,int port,String username, String password, String path, String filename, InputStream input) { 
  14.     boolean success = false; 
  15.     FTPClient ftp = new FTPClient(); 
  16.     try { 
  17.         int reply; 
  18.         ftp.connect(url, port);//连接FTP服务器 
  19.         //如果采用默认端口,可以使用ftp.connect(url)的方式直接连接FTP服务器 
  20.         ftp.login(username, password);//登录 
  21.         reply = ftp.getReplyCode(); 
  22.         if (!FTPReply.isPositiveCompletion(reply)) { 
  23.             ftp.disconnect(); 
  24.             return success; 
  25.         } 
  26.         ftp.changeWorkingDirectory(path); 
  27.         ftp.storeFile(filename, input);          
  28.          
  29.         input.close(); 
  30.         ftp.logout(); 
  31.         success = true; 
  32.     } catch (IOException e) { 
  33.         e.printStackTrace(); 
  34.     } finally { 
  35.         if (ftp.isConnected()) { 
  36.             try { 
  37.                 ftp.disconnect(); 
  38.             } catch (IOException ioe) { 
  39.             } 
  40.         } 
  41.     } 
  42.     return success; 
  43. }
/**
	 * Description: 向FTP服务器上传文件
	 * @Version1.0 Jul 27, 2008 4:31:09 PM by 崔红保(cuihongbao@d-heaven.com)创建
	 * @param url FTP服务器hostname
	 * @param port FTP服务器端口
	 * @param username FTP登录账号
	 * @param password FTP登录密码
	 * @param path FTP服务器保存目录
	 * @param filename 上传到FTP服务器上的文件名
	 * @param input 输入流
	 * @return 成功返回true,否则返回false
	 */
	public static boolean uploadFile(String url,int port,String username, String password, String path, String filename, InputStream input) {
		boolean success = false;
		FTPClient ftp = new FTPClient();
		try {
			int reply;
			ftp.connect(url, port);//连接FTP服务器
			//如果采用默认端口,可以使用ftp.connect(url)的方式直接连接FTP服务器
			ftp.login(username, password);//登录
			reply = ftp.getReplyCode();
			if (!FTPReply.isPositiveCompletion(reply)) {
				ftp.disconnect();
				return success;
			}
			ftp.changeWorkingDirectory(path);
			ftp.storeFile(filename, input);			
			
			input.close();
			ftp.logout();
			success = true;
		} catch (IOException e) {
			e.printStackTrace();
		} finally {
			if (ftp.isConnected()) {
				try {
					ftp.disconnect();
				} catch (IOException ioe) {
				}
			}
		}
		return success;
	}
 
  

 

下面我们写两个小例子:

1.将本地文件上传到FTP服务器上,代码如下:

  1. @Test 
  2. publicvoid testUpLoadFromDisk(){ 
  3.     try { 
  4.         FileInputStream in=new FileInputStream(new File("D:/test.txt")); 
  5.         boolean flag = uploadFile("127.0.0.1",21, "test","test", "D:/ftp","test.txt", in); 
  6.         System.out.println(flag); 
  7.     } catch (FileNotFoundException e) { 
  8.         e.printStackTrace(); 
  9.     } 
  10. }
@Test
	public void testUpLoadFromDisk(){
		try {
			FileInputStream in=new FileInputStream(new File("D:/test.txt"));
			boolean flag = uploadFile("127.0.0.1", 21, "test", "test", "D:/ftp", "test.txt", in);
			System.out.println(flag);
		} catch (FileNotFoundException e) {
			e.printStackTrace();
		}
	}
 
  

2.在FTP服务器上生成一个文件,并将一个字符串写入到该文件中

  1. @Test 
  2. publicvoid testUpLoadFromString(){ 
  3.     try { 
  4.         InputStream input = new ByteArrayInputStream("test ftp".getBytes("utf-8")); 
  5.         boolean flag = uploadFile("127.0.0.1",21, "test","test", "D:/ftp","test.txt", input); 
  6.         System.out.println(flag); 
  7.     } catch (UnsupportedEncodingException e) { 
  8.         e.printStackTrace(); 
  9.     } 
  10. } 
@Test
	public void testUpLoadFromString(){
		try {
			InputStream input = new ByteArrayInputStream("test ftp".getBytes("utf-8"));
			boolean flag = uploadFile("127.0.0.1", 21, "test", "test", "D:/ftp", "test.txt", input);
			System.out.println(flag);
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}
	}
 
  

二、下载文件

       从FTP服务器下载文件的代码也很简单,参考如下:

  1. /**
  2. * Description: 从FTP服务器下载文件
  3. * @Version1.0 Jul 27, 2008 5:32:36 PM by 崔红保(cuihongbao@d-heaven.com)创建
  4. * @param url FTP服务器hostname
  5. * @param port FTP服务器端口
  6. * @param username FTP登录账号
  7. * @param password FTP登录密码
  8. * @param remotePath FTP服务器上的相对路径
  9. * @param fileName 要下载的文件名
  10. * @param localPath 下载后保存到本地的路径
  11. * @return
  12. */ 
  13. publicstaticboolean downFile(String url,int port,String username, String password, String remotePath,String fileName,String localPath) { 
  14.     boolean success = false; 
  15.     FTPClient ftp = new FTPClient(); 
  16.     try { 
  17.         int reply; 
  18.         ftp.connect(url, port); 
  19.         //如果采用默认端口,可以使用ftp.connect(url)的方式直接连接FTP服务器 
  20.         ftp.login(username, password);//登录 
  21.         reply = ftp.getReplyCode(); 
  22.         if (!FTPReply.isPositiveCompletion(reply)) { 
  23.             ftp.disconnect(); 
  24.             return success; 
  25.         } 
  26.         ftp.changeWorkingDirectory(remotePath);//转移到FTP服务器目录 
  27.         FTPFile[] fs = ftp.listFiles(); 
  28.         for(FTPFile ff:fs){ 
  29.             if(ff.getName().equals(fileName)){ 
  30.                 File localFile = new File(localPath+"/"+ff.getName()); 
  31.                  
  32.                 OutputStream is = new FileOutputStream(localFile);  
  33.                 ftp.retrieveFile(ff.getName(), is); 
  34.                 is.close(); 
  35.             } 
  36.         } 
  37.          
  38.         ftp.logout(); 
  39.         success = true; 
  40.     } catch (IOException e) { 
  41.         e.printStackTrace(); 
  42.     } finally { 
  43.         if (ftp.isConnected()) { 
  44.             try { 
  45.                 ftp.disconnect(); 
  46.             } catch (IOException ioe) { 
  47.             } 
  48.         } 
  49.     } 
  50.     return success; 
  51. } 
  52. 来源:http://blog.youkuaiyun.com/hbcui1984/article/details/2720204
Spring Boot整合FTP实现文件的上传和下载 第一步: pom.xml文件中引入依赖包 <!-- FtpClient依赖包 --> <dependency> <groupId>commons-net</groupId> <artifactId>commons-net</artifactId> <version>3.3</ve... 阅读详情

相关推荐

C#中实现FTP文件上传和下载的全面指南

文件传输协议(FTP)是互联网上用于文件传输的协议,它允许用户或应用程序连接到远程服务器,浏览目录,并上传或下载文件。在C#中,开发者可以使用标准的.NET类库中的和类来实现FTP功能。本章首先介绍FTP的基础知识,并展示如何在C#环境下实现基本的FTP操作。FTP使用标准的网络协议在客户端和服务器之间传输文件。它使用两个TCP端口:20用于数据传输,21用于命令和控制信息。FTP是基于客户端-服务器模型的应用程序,用户通过身份验证登录到FTP服务器。

weixin_36064575的博客 1916

手写一个好用的Java FTP操作工具类

前言 网上百度了很多FTP的java 工具类,发现文章代码都比较久远,且代码臃肿,即使搜到了代码写的还可以的,封装的常用操作方法不全面,于是自己花了半天实现一个好用的工具类。最初想用java自带的FTPClient 的jar 去封装,后来和apache的jar工具包对比后,发现易用性远不如apache,于是决定采用apache的ftp的jar 封装ftp操作类。 之前写过一篇 windows 服务器搭建FTP服务的教程 点击查看 代码展示 pom文件引入依赖关系 commons-net...

洛阳泰山的博客 2488

通达信双紫擒龙指标实战指南:从源码解析到精准安装

本文详细解析了通达信双紫擒龙指标的核心逻辑、源码获取与安全验证、安装流程及实战应用技巧。通过紫紫红黄四种颜色信号捕捉趋势转折点,结合MACD、布林通道和成交量加权算法,提升交易准确性。文章还提供了个性化设置、信号解读及常见问题解决方案,帮助投资者高效运用该指标。

weixin_29248611的博客 1063

通过FTP进行文件的上传和下载

目录一、FTP服务器展示文件列表:第一步:创建FTPClient第二步:连接FTP服务器并验证用户名密码第三步:切换到目标文件夹第四步:切换成功后,显示所有该目录下的所有文件第五步:最后关闭FTPClient对象 (要处理异常)整理所有代码:二、FTP服务器进行文件上传:第一步:创建FTPClient第二步:连接FTP服务器并验证用户名密码第三步:切换到目标文件夹,若没有:进行创建第四步:切换成功后,进行文件上传4.1、 设置上传文件类型4.2、设置上传文件保存至FTP服务器 第五步:最后关闭FTPClie

m0_61639114的博客 1万+

从稀疏表示到低秩表示(一)

确定研究方向后一直在狂补理论,最近看了一些文章,有了些想法,顺便也总结了representation系列的文章,由于我刚接触,可能会有些不足,愿大家共同指正。 从稀疏表示到低秩表示系列文章包括如下内容: 一、 sparse representation 二、 一、 sparse representation 1  sparsity  一个线性表示解决的问题如下图所示:

彼岸花 3万+

Zotero+WPS文献引用跳转功能缺失?3分钟教你用VBA宏搞定(附完整代码)

本文针对WPS用户使用Zotero时文献引用无法点击跳转的痛点,提供了一套完整的VBA宏解决方案。通过解析Zotero的域代码,自动在文内引用和文末参考文献之间创建超链接,实现一键跳转,极大提升了学术写作与文献查阅的效率。

weixin_28419039的博客 673

FTP

1, FTP(文件传输协议) FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在FTP的使用当中,用户经常遇到两个概念:"下载"(Download)和"...

weixin_34176694的博客 838

Anaconda报错no qt platform plugin could be initialized

今天因为在anaconda中安装了一个新包,安装成功后运行python 程序报错:no qt platform plugin could be initialized。 1.安装Anaconda3-4.2.0-Windows-x86_64,对应python版本为3.5.2,scikit learn版本是0.17。因为要用Isolation Forest算法,只有0.18以上版本scikit learn才包含此算法,所以想更新scikit learn。 conda install scikit-lear

zhang1806618的博客 1万+

关于FTP的东西

做一个FTP的断点续传功能,FTP使用的是org.apache.commons.net.ftp.FTPClient 个人认为需要解决的问题有: 1、上传的时候暂停 2、找到服务器上是否已经存在文件 这两个问题解决了,断点续传也就差不多了 首先,怎么将上传的任务终止的问题 设置FTP的setCopyStreamListener,可以获取当前上传的进度,可以在这里中止 中止的方法

氵白的专栏 4709

Spring Boot入门(02):【教程】轻松搭建Spring Boot开发环境,启动你的第一个Web项目!

快速搭建开发环境和启动项目是每个开发人员必备的技能。本文将为您提供一些简单易懂的方法和技巧,以帮助您快速搭建开发环境和启动项目。我们将介绍如何选择适合您的开发工具、配置您的操作系统、安装必要的软件包和依赖项,并开始编写您的第一个应用程序。无论您是一位新手还是一位经验丰富的开发人员,本文都会给您提供有用的信息和实用的建议,让您在最短时间内快速搭建和启动开发项目。

**My Coding Family** 22万+

Camera HAL 多线程管理详解

本文摘要:Camera HAL 采用双线程管理体系(CAMX与CHI-CDK)实现高效并发处理。CAMX ThreadManager负责HAL内部及框架交互,采用线程池+任务调度机制,将节点处理、回调等封装为Job异步执行;CHI ThreadManager专注于OEM定制逻辑,支持异步/同步两种作业模式。两套系统通过函数指针解耦但共享地址空间,共同实现硬件流水线的强实时性。文章详细解析了两者的类层次架构、核心数据结构及典型应用场景,并提供了问题排查的代码切入点,为Camera HAL开发与性能优化提供指导

DU_YULIN的博客 59

关于FTPClient无法执行logout()直到断开连接的问题

今天遇到一个问题,做个记录,当我们在使用ftp下载文件时会获取到一个输入流,这个输入流必须在关闭ftpclient或者退出之前先close掉,否则ftp认为你还在获取文件中,导致无法关闭客户端链接;--------------------->卡在这不不能动直到失去链接。这个is在代码中没有提前close;

WM_55555的博客 1476

uniapp - 解决苹果ios真机运行报错:错误:请查看是否设备未加入到证书列表或者确认证书类型是否匹配(HbuilderX运行IOS手机出现问题,uniapp运行到IOS真机提示请查看是否设备未)

uni-app,ios苹果,App平台端,uniapp运行到IOS真机提示错误:请查看是否设备未加入到证书列表或者确认证书类型是否匹配,UUID在哪里,uniApp运行到ios真机报错解决,安装自定义基座App失败,没找到有计划资源,证书、标识符和描述文件,证书标识符和描述文件下面没有选项怎么回事,HBuilder真机调试报错请查看是否设备未加入到证书列表或者确认证书类型是否匹配,UniApp运行到IOS真机提示,授权的设备才可以直接安装基座,添加调试的IOS设备,在Devices中,添加手机设备UUID

🏆 前端领域优质创作者 1万+

Java实现FTP文件上传和下载

一、背景 二、maven依赖 三、FTP工具类 3.1、主动模式(PORT) 3.2、被动模式(PASV) 四、验证 4.1、dos下操作FTP 4.2、FTP文件上传 4.3、FTP文件下载

嘉禾嘉宁papa 2万+

一文读懂 CST 时/频域求解器

本文系统介绍了CST Studio Suite中的关键网格技术——六面体网格、四面体网格以及TLM求解器专用的八叉树非均匀网格技术。重点阐述了六面体网格的三项核心技术:理想边界拟合(PBA)技术可精确处理曲面边界,薄片技术(TST)能高效模拟薄层结构,自适应八叉树网格实现计算资源最优分配。同时详细对比了六面体网格与四面体网格的特点及适用场景,前者适用于系统级EMC/EMI分析等时域问题,后者擅长处理复杂曲面和异质材料的频域问题。

一只豌豆象的博客 469

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

python实现FTP文件上传和下载

前言 python拥有丰富且强大的类库,借助ftplib模块,可以很方便的实现FTP文件的上传和下载。 代码实例 # -*- coding: utf-8 -*- from ftplib import FTP import datetime, os, re class FtpUtil(object): """ FTP 常用方法 ftp.set_debuglevel(2) # 打开调试级别2,显示详细信息 ftp.connect("IPaddress", "port")

刘某人妙妙屋 5204

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Java实现ftp文件上传、下载和删除

本文利用apache ftp工具实现文件的上传下载和删除。具体如下: 1、下载相应的jar包: commons-net-1.4.1.jar 2、实现代码如下: public class FtpUtils { //ftp服务器地址 public String hostname = "192.168.1.249"; //ftp服务器端...

0945v1 1万+

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Linux下使用Shell脚本实现FTP自动上传和下载文件

登录FTP实现下载文件功能 FTP服务器:192.168.0.199 FTP路径:/ftphome/data 本地路径:/local/data 将文件从FTP下载到本地的脚本如下: 批量下载脚本代码 1 #从FTP上批量下载文件到本地 2 #!/bin/sh 3 ftp -v -n 192.168.0.199<<EOF 4 user ftpuser ftppwd 5 binary 6 cd /ftphome/downloadData 7 lcd /local/getDownload

qq_34718338的博客 6866

socket实现ftp文件的上传和下载

socket实现ftp文件的上传和下载 server端代码: import socket import json import struct import os soc = socket.socket(socket.AF_INET, socket.SOCK_STREAM) soc.bind(('127.0.0.1', 8021)) soc.listen(5) # 上传函数 def u...

banlie2891的博客 601

java上传ftp目录_Java实现FTP文件与文件夹的上传和下载

FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在FTP的使用当中,用户经常遇到两个概念:"下载"(Download)和"上传"(Upload)。"下载"文...

weixin_31661121的博客 1106

Java实现FTP服务器文件的上传和下载

一、前言: 最近刚好需要实现这个功能:实现ftp的上传和下载。在网上找了下资料,总结了下。直接上代码: 二、代码示例: 首先使用到的maven依赖: &lt;dependency&gt;     &lt;groupId&gt;commons-net&lt;/groupId&gt;     &lt;artifactId&gt;commons-net&lt;/artifactId&gt;   ...

老王的orange 2968

ftp上传下载java_Java实现FTP文件的上传和下载功能的实例代码

FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。在FTP的使用当中,用户经常遇到两个概念:"下载"(Download)和"上传"(Upload)。"下载"文...

weixin_29646607的博客 226

bat文件实现ftp上传和下载

1、FTP上传和下载的bat脚本。 脚本分为两部分:可执行bat脚本和ftp命令文件; 可执行bat脚本: 1 2 @echo off ftp -s:D:\ftp\ftp.txt  ftp命令ftp.txt: 1 2 3 4 5 6 7 8 9 10 ...

yongzai666的博客 1万+

Python实现FTP文件的上传和下载

# coding: utf-8 import os from ftplib import FTP def ftp_connect(host, username, password): ftp = FTP() # ftp.set_debuglevel(2) ftp.connect(host, 21) ftp.login(username, p...

weixin_30918633的博客 317

Java如何使用Sftp和Ftp实现对文件的上传和下载

这篇文章将为大家详细讲解有关Java如何使用Sftp和Ftp实现对文件的上传和下载,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

weixin_60365717的博客 1844
上一篇: Java调用webService接口
下一篇: spring容器和springMVC容器
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值