簡體   English   中英

.asFormUrlEncoded()從hashMap檢索數據<String, String>

[英].asFormUrlEncoded() to retrieve data from hashMap<String, String>

我正在使用MultipartRequest將視頻文件以及一些用戶詳細信息發送到我的播放框架應用程序,這些用戶詳細信息已添加到哈希映射Map<String, String> myMap; 在服務器端,我已經使用檢索了我的視頻文件。 asMultipartFormData();

我正在嘗試使用檢索地圖。 asFormUrlEncoded(); 但這使用Map<String, String[]>

因此,如果我嘗試使用此代碼再檢索一次,則只能從哈希映射中檢索一個值

for(int i =0; i < myMap.size(); i++){
            String param = "param" + (i + 1);
            System.out.println(myMap.get(param)[i]);    
        }

我收到arrayOutOfBounds錯誤,是否有其他解決方案可從MultipartFormData檢索數據,還是可以不同地實現循環?

也許我不應該使用.asFormUrlEncoded(); 根本無法檢索哈希圖?

編輯

我已經修改了代碼以使用迭代器

Iterator<String> myVeryOwnIterator = myMap.keySet().iterator();
        while(myVeryOwnIterator.hasNext()) {
            String key=(String)myVeryOwnIterator.next();
            String[] value= myMap.get(key);
            System.out.println(key + " " + value);
        }

這將打印我的密鑰,但是返回Ljava.lang.String;@作為值,我認為這是因為.asFormUrlEncoded(); 期待<String, string[]> ,但是我的hashMap使用<String, String>對此有任何解決方案?

這是解決方案:

    Iterator<String> myVeryOwnIterator = myMap.keySet().iterator();
    while(myVeryOwnIterator.hasNext()) {
        String key=(String)myVeryOwnIterator.next();
        String[] value= myMap.get(key);
        System.out.println(key + " " + value[0]);
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM