[javaSE] java上传图片给PHP
java通过http协议上传图片给php文件,对安卓上传图片给php接口的理解
java文件:
import java.io.DataOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL; public class HttpUpload {
public static final String API="http://localhost/test.php";
public static void main(String[] args) throws Exception {
String imgUrl="E:\\11.png";
String result=uploadImg(imgUrl);
System.out.println(result);
} private static String uploadImg(String imgUrl) throws Exception {
File imgFile=new File(imgUrl);
URL url=new URL(API);
HttpURLConnection conn=(HttpURLConnection) url.openConnection();
conn.setConnectTimeout(10000);
conn.setRequestMethod("POST");
conn.setRequestProperty("Content-Type", "multipart/form-data; boundary=----123456789");
conn.setDoInput(true);
conn.setDoOutput(true); OutputStream os=new DataOutputStream(conn.getOutputStream());
StringBuilder body=new StringBuilder();
body.append("------123456789\r\n");
body.append("Content-Disposition: form-data; name='img'; filename='"+imgFile.getName()+"'\r\n");
body.append("Content-Type: image/jpeg\r\n\r\n");
os.write(body.toString().getBytes()); InputStream is=new FileInputStream(imgFile);
byte[] b=new byte[1024];
int len=0;
while((len=is.read(b))!=-1){
os.write(b,0,len);
}
String end="\r\n------123456789--";
os.write(end.getBytes()); //输出返回结果
InputStream input=conn.getInputStream();
byte[] res=new byte[1024];
int resLen=input.read(res);
return new String(res,0,resLen);
}
}
PHP文件
<?php
class Test{
public static function main(){
header("content-type:text/html;charset=utf-8");
if(!empty($_FILES)){
$test=new Test();
$test->uploadImg();
exit;
}
}
/**
* 上传图片
*/
public function uploadImg(){
$res=move_uploaded_file($_FILES['img']['tmp_name'], './'.$_FILES['img']['name']);
if($res){
echo "upload success";
}else{
echo "upload error";
}
}
}
Test::main();
?>
<form enctype="multipart/form-data" action="test.php" method="post">
<input type="file" name="img" />
<input type="submit" value="上传" />
</form>
[javaSE] java上传图片给PHP的更多相关文章
- JSP+java上传图片到服务器,并将地址保存至MYSQL + JSP网页显示服务器的图片
这两天遇到个需求——用户头像修改功能. 查了好多资料,不是代码不全,就是某些高端框架,卡了好久,今已实现,分享给大家,如果有更好的方法,非常感谢可以在下方评论区写出 一.整体项目架构 二.web.xm ...
- React+ajax+java 上传图片并预览
之前有在网上找ajax上传图片的资料,大部分的人写得都是用jQuery,但是在这里用JQuery就大才小用了,所以我就自己写了,先上图. 由上图,首先点击上面的选择文件,在选择图片之后,将会自动上传图 ...
- java上传图片到数据库,涉及压缩文件zip/rar上传等
项目中有这个需求: 1)上传文件通过公司平台的校验,校验成功后,通过接口,返回文件流: 2)我们根据这个文件流进行操作.这里,先将文件流复制文件到项目临时目录WEB-INF/temp;文件使用完毕,删 ...
- JAVA 上传图片功能
前后端实现上传图片功能(JAVA代码) 1.前端大概 请求头必须为AJAX请求头: 'X-Requested-With': 'XMLHttpRequest' 一般是指网页中存在的Content-Typ ...
- Java上传图片到Ftp,包含上传后文件大小为0的问题和Properties配置文件的读取
准备工作:需要使用coomos-net jar包.下载地址 一. 上传图片到FTP,文件大小为0的问题,解决:将ftp模式修改为Passive模式就可以了. //将ftp模式修改为Passive模式 ...
- java 上传图片
1.导入smartupload.jar包 ,添加uploadIMG.jsp,upfileIMG.jsp. 2.需要在项目下面建立一个保存文件的文件夹pic或者upload 3.在调用的地方调用子框架u ...
- java上传图片或者文件
package com.pat.postrequestemulator; import java.io.BufferedReader; import java.io.DataInputStream; ...
- java 上传图片 并压缩图片大小
Thumbnailator 是一个优秀的图片处理的Google开源Java类库.处理效果远比Java API的好.从API提供现有的图像文件和图像对象的类中简化了处理过程,两三行代码就能够从现有图片生 ...
- [javaSE] java获取文件列表
递归测试 import java.io.File; import java.util.ArrayList; import java.util.HashMap; import java.util.Lis ...
随机推荐
- Tomcat内存溢出解决java.lang.OutOfMemoryError: PermGen space
背景:把两个项目同时部署在tomcat,启动快好的时候,报java.lang.OutOfMemoryError: PermGen space 原因:因为两个项目的jar包太多,JVM把里面的class ...
- [Maven实战-许晓斌]-[第二章]-2.1在Windows上安装maven
来源:<maven实战> 1.检查JAVA_HOME和java -version C:\Users\admin>echo %JAVA_HOME% C:\Users\admin&g ...
- ubuntu下搭建Discuz
环境:我用桥接方式创建了一个ubuntu16的虚拟机,ip为192.168.0.220 1.安装mysql sudo apt-get install mysql-server mysql-cl ...
- vue培训记录
在公司做了一次vue相关的培训,自己整理了一些大纲.供大家参考学习! ### 1. 项目构成及原理 [Vue](https://cn.vuejs.org/)###* 主流框架见解及差别 * react ...
- css 命名规划
命名规范 前言中略微描述了 CSS 怎么使用:下面介绍一下 CSS 的一些代码规范: CSS 命名一般采用小写英文单词或组合命名,单词与单词间以"-"分割:英文单词不缩写,除非一看 ...
- Windows下Anaconda安装 python + tensorflow GPU版
这里首先确认没有安装CPU版本,并默认已经安装了CUDA和Cudnn以及anaconda. 安装gpu版本的tensorflow 接下来需要安装GPU版本的tensorflow: 打开cmd并输入: ...
- elasticsearch-sql插件
elasticsearch DSL语法有些时候比较难懂换成SQL好处理一些,网上找到一个插件 https://github.com/NLPchina/elasticsearch-sql 安装elast ...
- pycharm下运行unittest的问题
环境: 系统:window7 64 软件:pycharm 版本:2016.3.2 问题描述: 使用unittest类的时候出现问题,问题截图如下 Pycharm 2016.2执行单元测试遇到如下问题: ...
- 转一个财务方面常用到的数字金额转成汉字大写金额 php类
系统里有牵扯到财务.合同等方面的处理时,常常需要把数字金额转成汉字大写金额(貌似这样正规),转一个转换的php class吧!<?php// 诸海加(ALPHA .z)// 2000-7-19 ...
- 求最大公因数(辗转相除法&更相减损术)
求最大公因数(辗转相除法&更相减损术) 辗转相除法 又名欧几里得算法 ,其原理其实是基于这个定理:\(gcd(a,b)=gcd(b,a\%b)\),详细证明,而任何数与0的最大公约数是它本身 ...