public static boolean downloadFileBySun(String server, String userName,
String userPassword) {
String line;
FtpClient ftpClient = new FtpClient();
try {
TelnetInputStream fileContent = null;
TelnetInputStream fileDirectory = null;
// 打开ftp服务器
ftpClient.openServer(server);
// 使用指定用户登录
ftpClient.login(userName, userPassword);
ftpClient.binary(); // 用二级制下载
// ftpClient.cd("..");
// fileContent = ftpClient
// .get("\\EDIInputFiles\\Carrierbak\\118.txt");
// fileContent =
// ftpClient.get("\\EDIInputFiles\\Carrier\\CSOEDI\\bak\\");
ftpClient.cd("\\EDIInputFiles\\Carrier\\CSOEDI\\bak\\");
fileDirectory = ftpClient.list();
// System.out.println(ftpClient.welcomeMsg);
InputStreamReader ir = new InputStreamReader(fileDirectory, "GBK");
BufferedReader br = new BufferedReader(ir);
while ((line = br.readLine()) != null) {
if (line.endsWith(".xls")) {
String fileName = line.split(" ")[line.split(" ").length - 1];
fileContent = ftpClient.get(fileName);
InputStreamReader cir = new InputStreamReader(fileContent,
"GBK");
BufferedReader cbr = new BufferedReader(cir);
String line1;
while ((line1 = cbr.readLine()) != null) {
System.out.println(line1);
}
}
}
br.close();
ir.close();
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
// 关闭ftp连接
ftpClient.closeServer();
} catch (Exception e) {
e.printStackTrace();
}
}
return true;
}
public static boolean uploadFileBySun(StringBuffer fileContent,
String server, String userName, String userPassword, String path,
String fileName) {
FtpClient ftpClient = new FtpClient();
try {
// 打开ftp服务器
ftpClient.openServer(server);
// 使用指定用户登录
ftpClient.login(userName, userPassword);
// 转到指定路径
ftpClient.cd(path);
TelnetOutputStream os = null;
// 新建一个文件
// os = ftpClient.put(new String(fileName.getBytes("GBK"),
// "iso-8859-1"));
os = ftpClient.put(fileName);
OutputStreamWriter osw = new OutputStreamWriter(os);
BufferedWriter bw = new BufferedWriter(osw);
bw.write(fileContent.toString());
bw.flush();
bw.close();
} catch (Exception e) {
System.out.println(e.getMessage());
return false;
} finally {
try {
// 关闭ftp连接
ftpClient.closeServer();
} catch (Exception e) {
e.printStackTrace();
}
}
return true;
}
分享到:
相关推荐
在VC++(Visual C++)开发环境中,使用FTP(File Transfer Protocol)进行文件的读写是一项常见的任务,尤其是在构建网络应用程序时。FTP是一种标准的网络协议,用于在Internet上进行文件传输。本教程将深入讲解如何...
当我们需要在Delphi应用中实现FTP(File Transfer Protocol)功能,例如读取远程服务器上的文件数据,这通常涉及到网络编程和文件操作。以下是对这个主题的详细阐述: 首先,为了连接FTP服务器,我们需要使用一个...
【Kettle012】Kettle访问FTP服务器文件并处理数据至PostgreSQL是关于使用Kettle(也称为Pentaho Data Integration,简称PDI)工具进行数据集成的一个具体实例。Kettle是一个开源的数据集成工具,它允许用户通过图形...
考虑到网络延迟和I/O操作的影响,可能需要优化文件下载和解析的速度,如使用缓冲区读写文件,或者采用异步下载方式。 通过上述步骤,可以编写一个完整的Java程序,实现从FTP服务器下载指定文件,解析文件内容,并...
Java定时从FTP服务器更新相关文件是一项常见的任务,特别是在自动化数据同步和备份的场景中。这里主要涉及的技术点包括FTP协议、Java编程以及文件系统操作。本文将深入探讨这些知识点,并提供一个基于`ftp4j`库的...
在Java编程环境中,读取FTP(File Transfer Protocol)服务器上的文件是一项常见的任务,尤其是在Web服务器和Linux系统环境下。FTP提供了一种可靠的方式来传输文件,使得应用程序可以远程访问和操作存储在FTP服务器...
方法首先建立FTP连接,然后通过`FtpWebRequest`的`Get`方法读取FTP服务器上的文件,并将其写入本地文件系统。 ### 获取FTP服务器上的文件列表 `GetFileList`方法实现了从FTP服务器获取指定目录下的文件列表功能。...
Labview将读取本地文件并将其内容发送到FTP服务器。 5. **错误处理**:在Labview中,所有的操作都应包括适当的错误处理。对于FTP操作,可能遇到的错误包括网络连接问题、权限问题、文件不存在等。通过使用错误结构...
- 虽然C#本身不直接支持从FTP服务器读取文件内容,但可以结合上述下载步骤,先将文件下载到本地,然后读取本地文件内容。 例如,以下是一个简单的FTP文件上传示例: ```csharp using System; using System.IO; ...
通过ABAP程序去读取FTP服务器的CSV文件
要实现仅读取文件属性的功能,我们可以发送一个"SIZE" FTP命令,该命令允许服务器返回指定文件的大小。在C#中,可以通过以下步骤操作: 1. 创建`FtpWebRequest`实例,设置其`Method`属性为"SIZE",并指定FTP服务器...
Java解析FTP服务器文本文件 Java解析FTP服务器文本文件是指使用Java语言连接FTP服务器,上传、下载、递归目录遍历等基本操作的集合。在这个过程中,我们需要引入相关的jar包,例如cpdetector.jar、jchardet-1.0.jar...
在ABAP(Advanced Business Application Programming)环境中,处理文件操作,如从FTP服务器下载文件、解析ZIP文件、将数据存储到内表以及管理文件系统中的文件移动,是常见的任务。本篇将详细介绍如何实现这些功能...
### 获取FTP服务器文件大小的知识点解析 在进行网络文件传输时,经常需要了解远程文件的大小,以便于更好地控制文件的下载进度或者进行其他相关的管理操作。本文将围绕“获取FTP服务器文件的大小”这一主题展开,...
FTP服务器是一种用于在互联网上进行文件传输的服务,它允许用户从一台计算机(客户端)向另一台计算机(服务器)上传或下载文件。FTP(File Transfer Protocol)是这项服务的基础协议,它是一个标准网络协议,用于在...
FTP上传文件,FTP解决乱码问题 解决乱码讲new String(s.getBytes("gbk"),"ISO8859-1");//其转换后还是乱码 改成国际中文标准码就行了
- 读取文件数据 - 关闭连接 ##### 2. 获取文件列表 获取FTP目录下的文件列表也是`FtpClientUtil`的一个重要功能。虽然提供的代码片段中没有详细展示,但通常可以通过发送特定的FTP命令来实现,如`LIST`或`NLST`。 ...
在本文中,我们将深入探讨如何使用C++编程语言结合libcurl库来实现FTP(File Transfer Protocol)服务的两个主要功能:列出所有文件和目录,并下载所有文件。FTP是一种广泛使用的互联网协议,用于在服务器和客户端...
7. **文件操作**:在实现FTP功能时,还需要对本地文件系统进行读写操作。C++标准库提供了`fstream`类来处理这些操作。 8. **多线程/异步处理**:为了同时处理多个客户端请求,服务器可能需要使用多线程或异步编程...
在本场景中,我们将探讨如何在WinForm应用中实现FTP文件上传以及读取FTP服务器上的文件。 首先,我们需要了解FTP的基本操作。FTP允许用户进行文件的上传、下载、删除等操作。在C#中,我们可以使用`System.Net....