pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

使用 Java 將文件上傳和 POST 到 PHP 頁(yè)面

Upload and POST file to PHP page with Java(使用 Java 將文件上傳和 POST 到 PHP 頁(yè)面)
本文介紹了使用 Java 將文件上傳和 POST 到 PHP 頁(yè)面的處理方法,對(duì)大家解決問(wèn)題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧!

問(wèn)題描述

我需要一種上傳文件并將其發(fā)布到 php 頁(yè)面的方法...

I need a way to upload a file and POST it into php page...

我的php頁(yè)面是:

<?php 
$maxsize = 10485760;
$array_estensioni_ammesse=array('.tmp');
$uploaddir = 'uploads/';
if (is_uploaded_file($_FILES['file']['tmp_name']))
{
    if($_FILES['file']['size'] <= $maxsize)
    {
        $estensione = strtolower(substr($_FILES['file']['name'], strrpos($_FILES['file']['name'], "."), strlen($_FILES['file']['name'])-strrpos($_FILES['file']['name'], ".")));
        if(!in_array($estensione, $array_estensioni_ammesse))
        {
            echo "File is not valid!
";
        }
        else
        {
            $uploadfile = $uploaddir . basename($_FILES['file']['name']); 
            echo "File ". $_FILES['file']['name'] ." uploaded successfully.
"; 
            if (move_uploaded_file($_FILES['file']['tmp_name'], $uploadfile))
            {
                echo "File is valid, and was successfully moved.
";
            } 
            else 
                print_r($_FILES); 
        }
    }
    else
        echo "File is not valid!
";
}
else
{ 
    echo "Upload Failed!!!"; 
    print_r($_FILES);
} 
?>

我在我的桌面應(yīng)用程序中使用這個(gè) java 代碼:

and i use this java code in my desktop application:

HttpURLConnection httpUrlConnection = (HttpURLConnection)new URL("http://www.mypage.org/upload.php").openConnection();
        httpUrlConnection.setDoOutput(true);
        httpUrlConnection.setRequestMethod("POST");
        OutputStream os = httpUrlConnection.getOutputStream();
        Thread.sleep(1000);
        BufferedInputStream fis = new BufferedInputStream(new FileInputStream("tmpfile.tmp"));

        long totalByte = fis.available();
        long byteTrasferred = 0;
        for (int i = 0; i < totalByte; i++) {
            os.write(fis.read());
            byteTrasferred = i + 1;
        }

        os.close();
        BufferedReader in = new BufferedReader(
                new InputStreamReader(
                httpUrlConnection.getInputStream()));

        String s = null;
        while ((s = in.readLine()) != null) {
            System.out.println(s);
        }
        in.close();
        fis.close();

但我總是收到上傳失敗!!!"消息.

But I receive always the "Upload Failed!!!" message.

推薦答案

即使線程很老了,可能還是有人在尋找更簡(jiǎn)單的方法來(lái)解決這個(gè)問(wèn)題(比如我:))

Even though the thread is very old, there may still be someone around looking for a more easy way to solve this problem (like me :))

經(jīng)過(guò)一番研究,我找到了一種在不更改原始海報(bào) Java 代碼的情況下上傳文件的方法.您只需要使用以下 PHP 代碼:

After some research I found a way to uplaod a file without changing the original poster's Java-Code. You just have to use the following PHP-code:

<?php
  $filename="abc.xyz";
  $fileData=file_get_contents('php://input');
  $fhandle=fopen($filename, 'wb');
  fwrite($fhandle, $fileData);
  fclose($fhandle);
  echo("Done uploading");
?>

此代碼只是獲取 java 應(yīng)用程序發(fā)送的原始數(shù)據(jù)并將其寫(xiě)入文件.然而,有一個(gè)問(wèn)題:你沒(méi)有得到原始文件名,所以你必須以其他方式傳輸它.

This code is just fetching the raw data sent by the java-application and writing it into a file. There is, however one problem: You dont get the original filename, so you have to transmit it somehow else.

我通過(guò)使用 GET 參數(shù)解決了這個(gè)問(wèn)題,這對(duì) Java 代碼進(jìn)行了一些必要的更改:

I solved this problem by using a GET-Parameter, which makes a little change in the Java-code necessary:

HttpURLConnection httpUrlConnection = (HttpURLConnection)new URL("http://www.mypage.org/upload.php").openConnection();

更改為

HttpURLConnection httpUrlConnection = (HttpURLConnection)new URL("http://www.mypage.org/upload.php?filename=abc.def").openConnection();

在您的 PHP 腳本中更改行

In your PHP-script you change the line

$filename="abc.xyz";

$filename=$_GET['filename'];

這個(gè)解決方案不使用任何外部庫(kù),在我看來(lái)比其他一些發(fā)布的更簡(jiǎn)單......

This solution doesn't use any external librarys and seems to me much more simple than some of the other posted ones...

希望我能幫助任何人:)

Hope I could help anyone:)

這篇關(guān)于使用 Java 將文件上傳和 POST 到 PHP 頁(yè)面的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來(lái)源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問(wèn)題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請(qǐng)聯(lián)系我們刪除處理,感謝您的支持!

相關(guān)文檔推薦

How to wrap text around components in a JTextPane?(如何在 JTextPane 中的組件周?chē)h(huán)繞文本?)
MyBatis, how to get the auto generated key of an insert? [MySql](MyBatis,如何獲取插入的自動(dòng)生成密鑰?[MySql])
Inserting to Oracle Nested Table in Java(在 Java 中插入 Oracle 嵌套表)
Java: How to insert CLOB into oracle database(Java:如何將 CLOB 插入 oracle 數(shù)據(jù)庫(kù))
Why does Spring-data-jdbc not save my Car object?(為什么 Spring-data-jdbc 不保存我的 Car 對(duì)象?)
Use threading to process file chunk by chunk(使用線程逐塊處理文件)
主站蜘蛛池模板: 活性氧化铝|无烟煤滤料|活性氧化铝厂家|锰砂滤料厂家-河南新泰净水材料有限公司 | 礼堂椅厂家|佛山市艺典家具有限公司 | 物流公司电话|附近物流公司电话上门取货 | 不干胶标签-不干胶贴纸-不干胶标签定制-不干胶标签印刷厂-弗雷曼纸业(苏州)有限公司 | 首页 - 军军小站|张军博客| 液压压力机,液压折弯机,液压剪板机,模锻液压机-鲁南新力机床有限公司 | 刺绳_刀片刺网_刺丝滚笼_不锈钢刺绳生产厂家_安平县浩荣金属丝网制品有限公司-安平县浩荣金属丝网制品有限公司 | 劳动法网-专业的劳动法和劳动争议仲裁服务网 | 陶瓷砂磨机,盘式砂磨机,棒销式砂磨机-无锡市少宏粉体科技有限公司 | 专业广州网站建设,微信小程序开发,一物一码和NFC应用开发、物联网、外贸商城、定制系统和APP开发【致茂网络】 | 碳化硅,氮化硅,冰晶石,绢云母,氟化铝,白刚玉,棕刚玉,石墨,铝粉,铁粉,金属硅粉,金属铝粉,氧化铝粉,硅微粉,蓝晶石,红柱石,莫来石,粉煤灰,三聚磷酸钠,六偏磷酸钠,硫酸镁-皓泉新材料 | 防火板_饰面耐火板价格、厂家_品牌认准格林雅 | 阴离子聚丙烯酰胺价格_PAM_高分子聚丙烯酰胺厂家-河南泰航净水材料有限公司 | 结晶点测定仪-润滑脂滴点测定仪-大连煜烁 | 广州迈驰新GMP兽药包装机首页_药品包装机_中药散剂包装机 | 北京四合院出租,北京四合院出售,北京平房买卖 - 顺益兴四合院 | pH污水传感器电极,溶解氧电极传感器-上海科蓝仪表科技有限公司 | SRRC认证|CCC认证|CTA申请_IMEI|MAC地址注册-英利检测 | 石家庄律师_石家庄刑事辩护律师_石家庄取保候审-河北万垚律师事务所 | 化工ERP软件_化工新材料ERP系统_化工新材料MES软件_MES系统-广东顺景软件科技有限公司 | 压砖机_电动螺旋压力机_粉末成型压力机_郑州华隆机械tel_0371-60121717 | 学考网学历中心| 耐高温风管_耐高温软管_食品级软管_吸尘管_钢丝软管_卫生级软管_塑料波纹管-东莞市鑫翔宇软管有限公司 | 昆明网络公司|云南网络公司|昆明网站建设公司|昆明网页设计|云南网站制作|新媒体运营公司|APP开发|小程序研发|尽在昆明奥远科技有限公司 | 校车_校车价格_19座幼儿园校车_幼儿园校车_大鼻子校车 | 北京燃气公司 用户服务中心| 跨境物流_美国卡派_中大件运输_尾程派送_海外仓一件代发 - 广州环至美供应链平台 | 谷歌关键词优化-外贸网站优化-Google SEO小语种推广-思亿欧外贸快车 | 海德莱电力(HYDELEY)-无功补偿元器件生产厂家-二十年专业从事电力电容器 | 软膜天花_软膜灯箱_首选乐创品牌_一站式天花软膜材料供应商! | 颗粒机,颗粒机组,木屑颗粒机-济南劲能机械有限公司 | 快速门厂家批发_PVC快速卷帘门_高速门_高速卷帘门-广州万盛门业 快干水泥|桥梁伸缩缝止水胶|伸缩缝装置生产厂家-广东广航交通科技有限公司 | 济南轻型钢结构/济南铁艺护栏/济南铁艺大门-济南燕翔铁艺制品有限公司 | 河北码上网络科技|邯郸小程序开发|邯郸微信开发|邯郸网站建设 | 潍坊青州古城旅游景点攻略_青州酒店美食推荐-青州旅游网 | 岩棉板|岩棉复合板|聚氨酯夹芯板|岩棉夹芯板|彩钢夹芯板-江苏恒海钢结构 | 水性绝缘漆_凡立水_绝缘漆树脂_环保绝缘漆-深圳维特利环保材料有限公司 | 天然气分析仪-液化气二甲醚分析仪|传昊仪器 | 深圳APP开发公司_软件APP定制开发/外包制作-红匣子科技 | 广州活动策划公司-15+年专业大型公关活动策划执行管理经验-睿阳广告 | 密封圈_泛塞封_格莱圈-[东莞市国昊密封圈科技有限公司]专注密封圈定制生产厂家 |