2016-07-11 5 views
0

WebViewでは中国語を含むURLを処理できませんか?私はちょうどつもり名の下に、次のようにWebViewのを隠す方法を使用して、中国含むファイルをアップロードしています

public void openFileChooser(ValueCallback<Uri> uploadMsg) { 

      mUploadMessage = uploadMsg; 
      Intent i = new Intent(Intent.ACTION_GET_CONTENT); 
      i.addCategory(Intent.CATEGORY_OPENABLE); 
      i.setType("image/*"); 
      ((Activity) mContext).startActivityForResult(
        Intent.createChooser(i, "File Chooser"), 
        WebViewActivity.FILECHOOSER_RESULTCODE); 

     } 

     // For Android 3.0+ 
     public void openFileChooser(ValueCallback uploadMsg, 
       String acceptType) { 
      mUploadMessage = uploadMsg; 
      Intent i = new Intent(Intent.ACTION_GET_CONTENT); 
      i.addCategory(Intent.CATEGORY_OPENABLE); 
      i.setType("*/*"); 
      ((Activity) mContext).startActivityForResult(
        Intent.createChooser(i, "File Browser"), 
        WebViewActivity.FILECHOOSER_RESULTCODE); 
     } 

     // For Android 4.1 
     public void openFileChooser(ValueCallback<Uri> uploadMsg, 
       String acceptType, String capture) { 
      mUploadMessage = uploadMsg; 
      Intent i = new Intent(Intent.ACTION_GET_CONTENT); 
      i.addCategory(Intent.CATEGORY_OPENABLE); 
      i.setType("*/*"); 
      ((Activity) mContext).startActivityForResult(
        Intent.createChooser(i, "File Chooser"), 
        WebViewActivity.FILECHOOSER_RESULTCODE); 

     } 
    }); 

このコードが実行するのに良いです、と私は中国語の文字なしで正常にファイルをアップロードすることができます。

if (null == mUploadMessage) return;  
        Uri result = intent == null || resultCode != RESULT_OK ? null : intent.getData(); 
        mUploadMessage.onReceiveValue(***result***);  
        mUploadMessage = null; 

この結果はURIの一種であり、そのパスは、中国が含まれ、その後、問題が発生します。それは私が名前の漢字を持つファイルを選択すると、その後、私はこのようなコールバックを取得問題ようになりましたWebViewは次のような例外を出します: net::ERR_FILE_NOT_FOUND、私はutf-8でUriのパスをフォーマットしようとしましたが、うまく動作しませんでした。

誰でもこの問題を抱えていますか?私は3日間これについて悩まされている、誰が私を助けることができる、ありがとうたくさんの!

答えて

0

w3cで中国語をiso8859文字に変更することができます

関連する問題