У меня есть JSONObject, который я преобразовал в массив JSON, а затем проанализировал его в отдельных строках.Я объединил их, чтобы сформировать одну новую строку.Вот код, который я использовал.
for(int n = 0; n<newtrs_array.length();n++){
JSONObject object = newtrs_array.getJSONObject(n);
String newcompanyid = object.getString("companyid");
String newusername = object.getString("username");
String newdate = object.getString("date");
String newClientId = object.getString("clientid");
String newprojectId = object.getString("projectid");
String newniv1 = object.getString("niv1");
String newniv2 = object.getString("niv2");
String newworktypeid = object.getString("worktypeid");
String newtimetypeid = object.getString("timetypeid");
String newhours = object.getString("hours");
String newcomment = object.getString("comment");
String newprivatecomment = object.getString("privatecomment");
String newopen = object.getString("open");
String newreportid = object.getString("reportid");
newtrsArray += newcompanyid+"#"+newusername+"#"+newdate+"#"
+newClientId+"#"+newprojectId
+"#"+newniv1+"#"+newniv2+"#"+newworktypeid
+"#"+newtimetypeid+"#"+newhours+"#"+newcomment
+"#"+newprivatecomment+"#"+newopen+"#"+newreportid;
}
}
Это код, который используется для разделения newtrsarray
for(int n=0; n<split_frombufferedValue.length; n++){
if(split_frombufferedValue[n] != null){
try{
//Log.i(TAG, "***********%%%%%%%%%"+split_frombufferedValue[1]);
newtrsArray = split_frombufferedValue[0].toString();
newschemaArray = split_frombufferedValue[1].toString();
Log.i(TAG, "************* "+newschemaArray);
newdeletedtrsArray = split_frombufferedValue[2].toString();
String newcreatedtrs_array = split_frombufferedValue[3].toString();
String newsync_reponse = split_frombufferedValue[4].toString();
String newmodtrs_array = split_frombufferedValue[5].toString();
} catch(Exception e){
e.printStackTrace();
}
}
}
split_newtrsArray = newtrsArray.split("#");
split_newdeletedtrsArray = newdeletedtrsArray.split("@@@@");
split_newschemaArray = newschemaArray.split("%%%%");
Log.i(TAG, "############# "+split_newtrsArray[0]+" -length "+split_newtrsArray.length);
}
Моя проблема в том, что: newtrsarray составляет около 4000 символов или более.Это приводит к тому, что "#" вставляется дважды или даже трижды за раз.Как показано ниже
&&--Second activty:HTTPClient--**(824): !!!!!------UTB17#DA#2011-10-10#1000#363636#10##105#30#5###no#30667UTB17#DA#2011-09-12#1000#363636#10##100##6##Not Available#yes#31659UTB17#DA#2011-09-13#1000#363636#10##100##2###yes#31665
Как обойти эту проблему.Значения должны быть объединены в одну строку, а затем разделены в другой функции.Затем они должны быть вставлены в базу данных.Надеюсь, я смог объяснить свою проблему ясно.
Ура!