android端上傳後臺資料 string字串拼接問題
如題 ,上傳後臺資料的時候後臺接受json 一般情況下就是前端提交的的時候將要傳遞的值轉成json。
一般轉json前都是以實體的方式放進去。例如 user user= new user();
把你要放的欄位對應放到user實體類裡面
例如:user.setName("張山");
user.setSex("男");
Gson g = new Gson();
然後String strGson = g.toJson(user);
提交時strGson 實際上 = “{“name”:"張山",“sex”:"男"}”
注意有時候提交個別的資料型別toJson後仍然沒法做到“{“name”:"張山",“sex”:"男"}”這樣的格式 像map 直接to json是有換行符的轉後的值
像這樣:
"{\"violateFee\":\"實收違章押金(元)\",\"yearCheckFee\":\"實收年檢押金(元)\",\"guaranteeFee\":\"實收徵信服務費(元)\",\"consultingFee\":\"實收諮詢費 (元)\",\"activationFee\":\"實收開戶費(元)\"}"
就是map 資料型別toJson後的資料:
沒找到合適的方法轉成後臺接受的資料格式就用最原始的辦法
自己拼接,注意此刻你的目的是要去掉轉義符 "\"
1:
for (Map.Entry<String, Object> entry : resData.entrySet()) {
FeetoString += "\"" + entry.getKey() + "\"" + ":" + "\"" + entry.getValue() + "\"" + ",";
}
這樣加上 \" 相當於去掉了轉義符 \
2:同時 一個 \" 相當於 一個單引號 “ 所以在碰到拼接字串時 需要拼接引號 正確的方式是:
String name = "\"" +文字資訊 +"\"" ;
這個轉義符有時候真的很討嫌 實在不行就用最原始的方法拼接。