Android 關於帶有中文字樣以及空格檔名的檔案上傳及下載
昨天閒來沒事,做了一些檔案的上傳和下載,博主這裡用的上傳以及下載框架名為:xutils3,想必有些人也用過。當然,這個框架正常的上傳和下載都是OK的,但是我發現,在遇到檔名帶有中文字樣和空格的檔案的時候,就會出現錯誤如下:
這是我下載檔案的時候框架丟擲的錯誤。後來百度了一下,說是需要進行urlencode,但是你只能對中文字樣的進行編碼,不然還是錯誤我是這麼做的:
這只是解決的檔名包含中文字樣的,如果裡面還包含空格,那就在解析的結果裡面再調private static String zhPattern = "[\u4e00-\u9fa5]+";//正則表示式,用於匹配url裡面的中文 public static String encode(String str, String charset) throws UnsupportedEncodingException { Pattern p = Pattern.compile(zhPattern); Matcher m = p.matcher(str); StringBuffer b = new StringBuffer(); while (m.find()) { m.appendReplacement(b, URLEncoder.encode(m.group(0), charset)); } m.appendTail(b); return b.toString(); }
encodeUrl.replaceAll(" ","%20");//%20就代表空格的編碼
這樣才算完整的url,再去調你的框架去載入或上傳就OK啦。
相關推薦
Android 關於帶有中文字樣以及空格檔名的檔案上傳及下載
昨天閒來沒事,做了一些檔案的上傳和下載,博主這裡用的上傳以及下載框架名為:xutils3,想必有些人也用過。當然,這個框架正常的上傳和下載都是OK的,但是我發現,在遇到檔名帶有中文字樣和空格的檔案的時
hdfs檔案上傳及下載的流程
1.檔案上傳的流程 1)客戶端向namenode傳送檔案上傳的請求 2)namenode會進行一系列的檢查: - 父目錄是否存在 - 檔案是否已經上傳 - 是否有檔案上傳許可權等 - 如果檢查沒問題,則會發送允許上傳的響應 3)客戶端傳送真正的上傳請求 包含重要的資訊
【Java】檔案上傳及下載、限制檔案大小
1、後端部分 Controller程式碼 // 上傳 @PostMapping("upload") @ResponseBody public Result upload(MultipartFile files, I
微信小程式多媒體檔案上傳及下載(springboot框架中)
/** * 微信檔案上傳介面 * @param file 待上傳檔案的完整路徑 */ public FileUploadOrDownload uploadTempMedia(String file) { /
linux 登陸ftp及檔案上傳及下載
1. Linux 終端連線FTP [[email protected] ~]$ ftp 10.85.7.97 Connected to 10.85.7.97. 220 Serv-U FTP Server v6.4 for WinSock ready..
Spring整合Struts2實現多檔案上傳及下載
Sping與Struts環境的搭建在前文已經講述過了,再次就不再做過多介紹了,詳情請參考前文《Spring整合Struts2中攔截鏈與註解的使用 》。接下來進入正題,Struts2的多檔案上傳步驟。本文仍然沿用Spring框架對Struts2框架進行管理,首先來看web.x
Linux檔案上傳及下載:rz&sz
1、簡述 通常,利用SSH管理遠端Linux伺服器時,經常需要與本地互動檔案。當然,我們可以利用FTP方式,比如通過Filezilla客戶端軟體。不過直接使用SSH軟體(SecureCRT、Xshell)自帶的上傳和下載功能無疑使最方便快捷的。通常SSH軟
Android關於FTP檔案上傳和下載功能詳解
Android關於FTP檔案上傳和下載功能詳解 更新時間:2017年09月21日 11:41:14 作者:一諾的祕密花園 我要評論 這篇文章主要為大家詳細介紹了Android關於FTP檔案上傳和下載功能,具有一定的參考價值,感興趣
extjs列表中檔案上傳與下載(帶有重新命名操作)
下面是extjs列表中檔案上傳與下載: 如圖: 一、上傳 上傳按鈕: { xtype: 'button', width: 60, margin: '0 20', text: ' 上 傳 ', handler: 'onUploadClick' }] 上傳按
Java:使用HttpClient進行POST和GET請求以及檔案上傳和下載
1.HttpClient2.本部落格簡單介紹一下POST和GET以及檔案下載的應用。程式碼如下:package net.mobctrl; import java.io.ByteArrayOutputStream; import java.io.File; import ja
Android Retrofit2.0實現檔案上傳和下載
這篇主要介紹retrofit框架的上傳檔案到伺服器和從伺服器下載功能的實現 上傳檔案到伺服器 首先 retrofit2.0之前上傳檔案到伺服器需要一個叫TypedFile這個類,但是在2.0版本,這個類被取消了,因為2.0以後,retrofit內部集成了okhttp
20170807ceph入門(一)——ceph中rados物件建立以及檔案上傳與下載
ceph中rados物件建立以及檔案上傳與下載 一、將本地檔案 /home/liangwl/file 檔案拷貝到 cephpool 這個池中,並在pool中檢視這個檔案中的內容 環境:3臺monitor,3個osd 檢視pool rados lspools 1. 我們先
關於JSch的使用,執行ssh命令,檔案上傳和下載以及連線方式
最近在做一個SAAS服務的專案,SAAS就是軟體即服務,具體可以去問度娘,然後底層呢需要遠端執行SSH命令來進行支援,最後就選擇了JSch來完成這個工作。 JSch是SSH2的一個純JAVA實現。它允許你連線到一個sshd伺服器,使用埠轉發,X11轉發,檔案傳輸等等。 大致
Mac連線遠端伺服器(Linux)以及檔案上傳、下載命令
在windows上,用xshell+xftp就可以很方便的操作遠端linux伺服器了。 而這2個軟體是沒有mac版的,所以在macOS下,是怎樣實現對遠端linux伺服器的操作的呢? 使用ssh連線遠端主機 ssh [email protected] 使用
Android中關於FTP的檔案上傳和下載
package ryancheng.example.progressbar; import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; import java.io.OutputStream; impo
Android網路開源庫-Retrofit(二) 檔案上傳、下載及進度監聽
1.寫在前面的話 首先說明,我還沒太搞懂retrofit,目前,這篇部落格只能給出這幾個內容。 檔案上傳 檔案下載 檔案下載的進度監聽 還有這兩點沒弄好, 多檔案一次上傳 (批量上傳) 檔案上傳進度監聽 當前使用版本 compile 'com
【IOS學習】http非同步檔案上傳和下載以及進度指示
2016-02-12 13:05:07.330 network-demo[16708:1254465] =================request redirectResponse================= 2016-02-12 13:05:07.331 network-demo[16708:
Android Webview實現圖片、檔案上傳及啟動相機功能
直接上程式碼,體會Webview強大的功能。 webView.setWebChromeClient(webChromeClient);private String mCameraFilePath = null; private ValueCallback<Uri&g
Apache FTP多執行緒檔案上傳、下載、修改檔名、刪除
此處實現多執行緒對FTP檔案的操作,FTPStatus來自上一篇文章,下附工具程式碼。 package com.scengine.wtms.utils.ftp; import java.io.File; import java.io.FileInputStream;
struts2實現檔案上傳與下載功能
一、Demo介紹 基於struts2框架,實現多檔案的上傳和下載功能。 實現原理圖: 部分介面圖: 上傳成功及下載頁面: 二、主要程式碼 uploadFile.jsp:在form表單中包含一個文字框(上傳使用者的姓名)和兩個檔案上傳選項. <%@