1

私はJavaが初めてで、Androidアプリケーションからサーバーにファイルを転送する必要があります。私はリンクから助けを借りました

POST を使用して HTTP サーバーにファイルをアップロードします。Android SDK

<?php
$target_path  = "./";
$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!";
}
?>

その PHP コードは完全に正常に動作しますが、サーバー側のコードを PHP ではなく Java で実装する必要があります。

私はグーグルでリンクからコードを見つけ、ここにリンクの説明を入力してください

InputStream in = request.getInputStream();
        BufferedReader r = new BufferedReader(new InputStreamReader(in));
        StringBuffer buf = new StringBuffer();
        String line;
        while ((line = r.readLine())!=null) {
        buf.append(line);
        }
        String s = buf.toString();

私はJavaが初めてなので、このコードの書き方がわかりません。NetBeans netbeans-7.1.1-ml-javaee がインストールされています。

このコードが正しいかどうか、ファイルに入れる方法やファイルの種類を教えてください。プロジェクトを作成しましたが、このコードをファイルに入れる方法がわかりません。

編集:

Andriod コードは正常に動作しています... ファイルを取得して保存するサーバー コードを開発したい

4

3 に答える 3

5

このコードがあなたに役立つことを願っています

try {
         HttpClient client = new DefaultHttpClient();
     HttpPost post = new HttpPost(Image_url);
     MultipartEntity mpEntity = new MultipartEntity();
     File file = new File(selectedImagePath);
     ContentBody cbFile = new FileBody(file, "image/jpeg");         
     mpEntity.addPart("photo", cbFile);
     mpEntity.addPart("user_id", new StringBody(SmallyTaxiTabbar.unique_ID));
     mpEntity.addPart("password", new StringBody(SmallyTaxiTabbar.password));
     post.setEntity(mpEntity);
     HttpResponse response1 = client.execute(post);
     HttpEntity resEntity = response1.getEntity();
     String Response=EntityUtils.toString(resEntity);
     Log.d("PICTUREServer Response", Response);
     JSONArray jsonarray = new JSONArray("["+Response+"]");
     JSONObject jsonobject = jsonarray.getJSONObject(0);
     alert=(jsonobject.getString("alert"));
     client.getConnectionManager().shutdown();
    } 
     catch (Exception e) {
                Log.e("TAGPost", e.toString());     
    }

ここで、SmallyTaxiTabbar.unique_ID、パスワードはパラメーター値です

*このコードがお役に立てば幸いです。*

于 2012-04-13T06:18:14.950 に答える
1

このライブラリが役立つかどうかを確認してください。いくつかの http メソッドのラッパーを作成しました。

https://github.com/nareshsvs/android-libraries

于 2012-04-13T09:57:00.623 に答える
0

Apache Commons FileUploadPOSTライブラリは、サーバーの観点から Java でリクエストのコンテンツを処理するのに役立ちます。必要に応じて、サーブレットと統合できます。

特に、コンテンツを処理します (リクエストを 1行ずつ直接multipart/form-data読んでいる場合は、手動で処理する必要があります)。InputStream

于 2012-04-16T11:32:05.023 に答える