在我的应用程序中,我在SharedPreferences中保存联系人,但我传递的数组也包括字符串中的开括号和双引号。
喜欢这样[" contactnumber1"," contactnumber2"," contactnumber3" .......]
但我需要字符串是这样的 contactnumber1,contactnumber2,contactnumber3 ....
这样我就可以使用这个contactnumbers字符串直接将它放在短信应用程序中并点击按钮发送警告消息。
请帮我解决这个问题
代码:
String[] arrayOfString=localMultiAutoCompleteTextview.getText().toString().split(",");
// Create a JSONArray to store all numbers
JSONArray numberArray=new JSONArray();
// Loop through the multiautocomplete textview value array
for(int i=0; i < arrayOfString.length; i++)
{
// Check whether the string contains '%'
if(arrayOfString[i].contains("%"))
{
// Add numbers to the array
numberArray.put(arrayOfString[i].split("%")[1]);
}
}
// Store the complete number array in preference as String
sp=getActivity().getSharedPreferences("sdat", 2);
ed=sp.edit();
ed.putString("snum", numberArray.toString());
ed.commit();
// To read the numbers after saving
String display = sp.getString("snum", new JSONArray().toString());
System.out.println(display);
Toast.makeText(getActivity(),"Contacts Saved:"+display,Toast.LENGTH_SHORT ).show();
}
});
答案 0 :(得分:0)
以下行是与引号和括号匹配的正则表达式,并将其从字符串中删除。只需拨打replaceAll
,即可查看以下字符:&#39; [&#39;,&#39;]&#39;,&#39;&#34;&# 39;并从字符串中删除它们。
strWithoutQuotesAndBraces = strWithQuotesAndBraces.replaceAll("(["[\\]])", "");