我有一个简单的问题。我正在尝试将文件上传到Java中的ftp服务器。
我的计算机上有一个文件,我想复制该文件并上传。我尝试将文件的每个字节手动写入输出流,但这不适用于复杂文件,例如zip文件或pdf文件。
File file = some file on my computer;
String name = file.getName();
URL url = new URL("ftp://user:password@domain.com/" + name +";type=i");
URLConnection urlc = url.openConnection();
OutputStream os = urlc.getOutputStream();
//then what do I do?
只是为了踢球,这是我尝试做的事情:
OutputStream os = urlc.getOutputStream();
BufferedReader br = new BufferedReader(new FileReader(file));
String line = br.readLine();
while(line != null && (!line.equals(""))) {
os.write(line.getBytes());
os.write("\n".getBytes());
line = br.readLine();
}
os.close();
例如,当我使用pdf进行此操作,然后尝试打开使用该程序运行的pdf时,它表示尝试打开pdf时发生错误。我猜是因为我要在文件中写入“ \
n”?如何不执行此操作就复制文件?
当您尝试复制二进制文件的逐字节精确内容时,请勿使用Reader
或Writer
类中的任何一个。仅将这些用于纯文本!而是使用InputStream
和OutputStream
类;它们根本不解释数据,而Reader
和Writer
类将数据解释为字符。例如
OutputStream os = urlc.getOutputStream();
FileInputStreamReader fis = new FileInputStream(file);
byte[] buffer = new byte[1000];
int count = 0;
while((count = fis.read(buffer)) > 0) {
os.write(buffer, 0, count);
}
您URLConnection
不知道这里的用法是否正确;使用Apache Commons
FTP(在其他地方建议)将是一个好主意。无论如何,这将是读取文件的方式。
我用Java编写了一个访问URL的小代码。该代码适用于HTTP连接,但不适用于HTTPS(错误粘贴在下面) 如有任何帮助,我们将不胜感激。 代码: 错误: 异常线程"main"javax.net.ssl.SSLHandshake异常:sun.security.validator.验证器异常:PKIX路径构建失败:sun.security.provider.certpath.SunCertPathB
问题内容: 我正在构建一个应用程序,该应用程序会定期检查一些rss feed中的新内容。这些提要中的某些只能通过https访问,而有些则具有自签名或证书破损。我希望能够继续检查它们。 请注意,此应用程序中的安全性不是问题,其目标是以最小的努力访问内容。 我正在使用以下代码来规避大多数证书问题: 这适用于大多数站点,但是在一个站点上我仍然遇到此异常: 有谁知道我该如何解决? 问题答案: 有一个解决方
我一直在使用ftp在android应用程序的服务器上上传图像,我正在使用以下代码连接ftp。它在Wi-fi中工作正常,但如果我切换到3G或2G连接,就会出现连接超时错误。那么,你能告诉我如何处理这种情况吗。我的客户在Veriozon也面临这个问题,Sprint,ATT网络提供商。它的iPhone版本在所有网络中都运行良好。 代码: 错误: JAVA网ConnectException:无法连接到主机
问题内容: 我正在尝试通过URLConnection上传文件,但是我需要将其读取/写入为二进制文件,而无需进行任何编码更改。 所以我试图从读取数组,但是现在我有一个问题。我用于输出到服务器的对象不允许我执行操作(类型为)。我怎样才能解决这个问题?还是有另一种快速将二进制数据从a复制到a的方法? 谢谢 问题答案: 对象(包括)专门用于输出字符数据。听起来您想要这里而不是这里。 你是哪里人 如果它是通
问题内容: 我在使用DB2时遇到问题。我刚刚将db2安装为db2admin并使用了密码。当我尝试连接到数据库时,它已成功完成,并且在运行任何简单的选择查询时,都会出现以下错误:- DB2 SQL错误:SQLCODE = -204,SQLSTATE = 42704,SQLERRMC = DB2ADMIN.LOGIN,DRIVER = 3.57.82 我有一个名为onp的数据库,其中有一个名为“ lo
本文向大家介绍简单谈谈mysql左连接内连接,包括了简单谈谈mysql左连接内连接的使用技巧和注意事项,需要的朋友参考一下 前言 最近忙着开发x省冷链追溯系统,天天干到晚上十一点多才回到家,周末也加班,没啥时间写博客,闲下来再好好写写 业务: sql语句统计出入库数据。 问题: 只统计了X端入库单。 原因: 没有发现X端的数据库中只有入库单是有a字段数据而出库单是没有的,并使用了a字段去inner