背景
网上很多上传到java服务器上的,找了好久,找到了上传到php的了,思路跟我当初想的差不多,就是POST过去。废话不多说,直接上图看代码。
PHP代码
PHP代码
- $target_path = "./upload/" ; //接收文件目录
- $target_path = $target_path . basename ( $_FILES [ 'uploadedfile' ][ 'name' ]);
- if (move_uploaded_file( $_FILES [ 'uploadedfile' ][ 'tmp_name' ], $target_path )) {
- echo "The file " . basename ( $_FILES [ 'uploadedfile' ][ 'name' ]). " has been uploaded" ;
- } else {
- echo "There was an error uploading the file, please try again!" . $_FILES [ 'uploadedfile' ][ 'error' ];
- }
- ?>
Android代码
上传的主要代码:
Java代码
- private void uploadFile(String uploadUrl)
- {
- String end = "\r\n" ;
- String twoHyphens = "--" ;
- String boundary = "******" ;
- try
- {
- URL url = new URL(uploadUrl);
- HttpURLConnection httpURLConnection = (HttpURLConnection) url
- .openConnection(); //http连接
- // 设置每次传输的流大小,可以有效防止手机因为内存不足崩溃
- httpURLConnection.setChunkedStreamingMode( 128 * 1024 ); // 128K
- // 允许输入输出流
- httpURLConnection.setDoInput( true );
- httpURLConnection.setDoOutput( true );
- httpURLConnection.setUseCaches( false );
- // 使用POST方法
- httpURLConnection.setRequestMethod( "POST" );
- httpURLConnection.setRequestProperty( "Connection" , "Keep-Alive" ); //保持一直连接
- httpURLConnection.setRequestProperty( "Charset" , "UTF-8" ); //编码
- httpURLConnection.setRequestProperty( "Content-Type" ,
- "multipart/form-data;boundary=" + boundary); //POST传递过去的编码
- DataOutputStream dos = new DataOutputStream(
- httpURLConnection.getOutputStream()); //输出流
- dos.writeBytes(twoHyphens + boundary + end);
- dos.writeBytes( "Content-Disposition: form-data; name=\"uploadedfile\"; filename=\""
- + srcPath.substring(srcPath.lastIndexOf( "/" ) + 1 )
- + "\""
- + end);
- dos.writeBytes(end);
- FileInputStream fis = new FileInputStream(srcPath); //文件输入流,写入到内存中
- byte [] buffer = new byte [ 8192 ]; // 8k
- int count = 0 ;
- // 读取文件
- while ((count = fis.read(buffer)) != - 1 )
- {
- dos.write(buffer, 0 , count);
- }
- fis.close();
- dos.writeBytes(end);
- dos.writeBytes(twoHyphens + boundary + twoHyphens + end);
- dos.flush();
- InputStream is = httpURLConnection.getInputStream(); //http输入,即得到返回的结果
- InputStreamReader isr = new InputStreamReader(is, "utf-8" );
- BufferedReader br = new BufferedReader(isr);
- String result = br.readLine();
- Toast.makeText( this , result, Toast.LENGTH_LONG).show(); //将结果输出
- dos.close();
- is.close();
- } catch (Exception e)
- {
- e.printStackTrace();
- setTitle(e.getMessage());
- }
- }
因为安卓4.0之后耗时间的操作要求都在非UI线程中操作,即将前面的AsyncTask拿来用了吧~
AsyncTask传送门: http://www.cnblogs.com/yydcdut/p/3707960.html
在这个类中,将上传的操作放在doInBackground当中,可以有ProgressDialog显示上传了多少:
Java代码
- // Read file
- bytesRead = fileInputStream.read(buffer, 0 , bufferSize);
- while (bytesRead > 0 ) {
- outputStream.write(buffer, 0 , bufferSize);
- length += bufferSize;
- progress = ( int ) ((length * 100 ) / totalSize);
- publishProgress(progress);
- bytesAvailable = fileInputStream.available();
- bufferSize = Math.min(bytesAvailable, maxBufferSize);
- bytesRead = fileInputStream.read(buffer, 0 , bufferSize);
- }
- outputStream.writeBytes(lineEnd);
- outputStream.writeBytes(twoHyphens + boundary + twoHyphens
- + lineEnd);
- publishProgress( 100 );
还有就是,注意权限哟:
XML/HTML代码

PHP ist hauptsächlich prozedurale Programmierung, unterstützt aber auch die objektorientierte Programmierung (OOP). Python unterstützt eine Vielzahl von Paradigmen, einschließlich OOP, funktionaler und prozeduraler Programmierung. PHP ist für die Webentwicklung geeignet, und Python eignet sich für eine Vielzahl von Anwendungen wie Datenanalyse und maschinelles Lernen.

PHP entstand 1994 und wurde von Rasmuslerdorf entwickelt. Es wurde ursprünglich verwendet, um Website-Besucher zu verfolgen und sich nach und nach zu einer serverseitigen Skriptsprache entwickelt und in der Webentwicklung häufig verwendet. Python wurde Ende der 1980er Jahre von Guidovan Rossum entwickelt und erstmals 1991 veröffentlicht. Es betont die Lesbarkeit und Einfachheit der Code und ist für wissenschaftliche Computer, Datenanalysen und andere Bereiche geeignet.

PHP eignet sich für Webentwicklung und schnelles Prototyping, und Python eignet sich für Datenwissenschaft und maschinelles Lernen. 1.PHP wird für die dynamische Webentwicklung verwendet, mit einfacher Syntax und für schnelle Entwicklung geeignet. 2. Python hat eine kurze Syntax, ist für mehrere Felder geeignet und ein starkes Bibliotheksökosystem.

PHP bleibt im Modernisierungsprozess wichtig, da es eine große Anzahl von Websites und Anwendungen unterstützt und sich den Entwicklungsbedürfnissen durch Frameworks anpasst. 1.PHP7 verbessert die Leistung und führt neue Funktionen ein. 2. Moderne Frameworks wie Laravel, Symfony und Codesigniter vereinfachen die Entwicklung und verbessern die Codequalität. 3.. Leistungsoptimierung und Best Practices verbessern die Anwendungseffizienz weiter.

PhPhas significantantyPactedWebDevelopmentAndendendsbeyondit.1) iTpowersMAjorPlatforms-LikewordpressandExcelsInDatabaseInteractions.2) php'SadaptabilityAllowStoscaleForLargeApplicationsfraMe-Linien-Linien-Linien-Linienkripte

PHP -Typ -Eingabeaufforderungen zur Verbesserung der Codequalität und der Lesbarkeit. 1) Tipps zum Skalartyp: Da Php7.0 in den Funktionsparametern wie int, float usw. angegeben werden dürfen. 3) Eingabeaufforderung für Gewerkschaftstyp: Da Php8.0 in Funktionsparametern oder Rückgabetypen angegeben werden dürfen. 4) Nullierstyp Eingabeaufforderung: Ermöglicht die Einbeziehung von Nullwerten und Handlungsfunktionen, die Nullwerte zurückgeben können.

Verwenden Sie in PHP das Klonschlüsselwort, um eine Kopie des Objekts zu erstellen und das Klonierungsverhalten über die \ _ \ _ Clone Magic -Methode anzupassen. 1. Verwenden Sie das Klonschlüsselwort, um eine flache Kopie zu erstellen und die Eigenschaften des Objekts, nicht die Eigenschaften des Objekts zu klonen. 2. Die \ _ \ _ Klonmethode kann verschachtelte Objekte tief kopieren, um flache Kopierprobleme zu vermeiden. 3. achten Sie darauf, dass kreisförmige Referenzen und Leistungsprobleme beim Klonen vermieden werden, und optimieren Sie die Klonierungsvorgänge, um die Effizienz zu verbessern.

PHP eignet sich für Webentwicklungs- und Content -Management -Systeme, und Python eignet sich für Datenwissenschafts-, maschinelles Lernen- und Automatisierungsskripte. 1.PHP hat eine gute Leistung beim Erstellen von schnellen und skalierbaren Websites und Anwendungen und wird üblicherweise in CMS wie WordPress verwendet. 2. Python hat sich in den Bereichen Datenwissenschaft und maschinelles Lernen mit reichen Bibliotheken wie Numpy und TensorFlow übertrifft.


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

WebStorm-Mac-Version
Nützliche JavaScript-Entwicklungstools

Dreamweaver CS6
Visuelle Webentwicklungstools

Herunterladen der Mac-Version des Atom-Editors
Der beliebteste Open-Source-Editor

DVWA
Damn Vulnerable Web App (DVWA) ist eine PHP/MySQL-Webanwendung, die sehr anfällig ist. Seine Hauptziele bestehen darin, Sicherheitsexperten dabei zu helfen, ihre Fähigkeiten und Tools in einem rechtlichen Umfeld zu testen, Webentwicklern dabei zu helfen, den Prozess der Sicherung von Webanwendungen besser zu verstehen, und Lehrern/Schülern dabei zu helfen, in einer Unterrichtsumgebung Webanwendungen zu lehren/lernen Sicherheit. Das Ziel von DVWA besteht darin, einige der häufigsten Web-Schwachstellen über eine einfache und unkomplizierte Benutzeroberfläche mit unterschiedlichen Schwierigkeitsgraden zu üben. Bitte beachten Sie, dass diese Software

Sicherer Prüfungsbrowser
Safe Exam Browser ist eine sichere Browserumgebung für die sichere Teilnahme an Online-Prüfungen. Diese Software verwandelt jeden Computer in einen sicheren Arbeitsplatz. Es kontrolliert den Zugriff auf alle Dienstprogramme und verhindert, dass Schüler nicht autorisierte Ressourcen nutzen.