adnroid如何上傳圖片到webservice(c#編寫的)

來源:互聯網
上載者:User
這幾天 我在編寫adnroid移動采編的系統 由於是第一次使用java和android平台 遇到了很多問題其中有: <1>如何調用.net寫的webservices             <2>如何瀏覽圖片(imageview)           <3>如何取圖片的名稱和路徑    這些問題已經解決了   花了我好幾天的時間下面我說一下是 如何解決  adnroid如何上傳圖片到webservice(c#編寫的)  的webservices 的方法:  (這個不是很關鍵  一般我們都會處理)View Code參數的定義:string UpLoadPhoto(string strxml, byte[] photodata, int length)方法體關鍵代碼: (將byte[]類型的變數 還原成檔案)FileStream fs = new FileStream(sFilePath + "\\" + FileName, FileMode.OpenOrCreate, FileAccess.ReadWrite, FileShare.ReadWrite);fs.Position = Position;fs.Write(Bytes, 0, Bytes.Length);fs.Close();fs = null;複製代碼android用戶端(sdk2.2)代碼我只是說一下 第二個參數如何產生吧(問題的關鍵就在這裡)@Override public void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  requestWindowFeature(Window.FEATURE_NO_TITLE);  setContentView(R.layout.tupiangaojian);  //  ImageView iv_image = (ImageView) findViewById(R.id.imview);  iv_image.setDrawingCacheEnabled(true);   //這句話是和後面的Bitmap bitmap = iv_image.getDrawingCache();對應  // } //取得圖片的Base64編碼的字串  (bitmap 變數從imageview上面就可以取得 Bitmap bitmap = iv_image.getDrawingCache();)  ByteArrayOutputStream baos = new ByteArrayOutputStream();  bitmap.compress(Bitmap.CompressFormat.PNG, 100, baos);  String photodata = new String(Base64.encode(baos.toByteArray(),    Base64.DEFAULT));string UpLoadPhoto(string strxml, byte[] photodata, int length)其中 這個 photodata 就是要傳到參數photodata 上面的資料 ( 有意思的是參數定義的是byte[] 這個變數是String)這個問題困擾了好幾天 最後就是這樣解決的順便再記錄一下其他的事情:如何擷取圖片的檔案名稱(imageview)View Code@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) {  if (resultCode == RESULT_OK) {Uri uri = data.getData();   Cursor cursor = getContentResolver().query(uri, null, null, null,     null);   cursor.moveToFirst();   // String imgNo = cursor.getString(0); // 圖片編號   imgPath = cursor.getString(1); // 圖片檔案路徑   String imgSize = cursor.getString(2); // 圖片大小   String imgName = cursor.getString(3); // 圖片檔案名稱}}
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.