繁体   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