我一直在开发一个应用程序,它将允许用户选择一周中的几天。然后,这些天将通过意图发送到日历以预先填充事件的可重复性,但是rrule仅接受一周中前几天的字母。我已经能够拆分和字符串化并将星期几减少为前两个字母,但是现在我需要重新组合它们,以逗号分隔,以便可以按意图发送它们。这是我的代码:
int durationColumnIndex = mCursor.getColumnIndex(PrescriptionContract.PrescriptionEntry.COLUMN_PRESCRIPTION_FREQUENCY_DURATION);
String duration1 = mCursor.getString(durationColumnIndex);
String [] duration2 = duration1.split("\\s+");
for (int x=0; x < duration2.length;x++) {
if (duration2[x].length() >= 2) {
duration2[x]= duration2[x].substring(0, 2);
Log.v("CatalogActivity", duration2[x] + " rows deleted from prescription database");
}
}
正如您所看到的,我对如何重新组合它们一无所知。我尝试过:
String.join(“,”,duration2),但是它似乎不起作用。我的目标是基本上将“星期一星期三星期日”变成Mo,We,Su这应该是一个字符串。谢谢
答案 0 :(得分:1)
您可以使用Stringbuilder
StringBuilder stringBuilder = new StringBuilder();
int durationColumnIndex = mCursor.getColumnIndex(PrescriptionContract.PrescriptionEntry.COLUMN_PRESCRIPTION_FREQUENCY_DURATION);
String duration1 = mCursor.getString(durationColumnIndex);
String[] duration2 = duration1.split("\\s+");
for (int x = 0; x < duration2.length; x++) {
if (duration2[x].length() >= 2) {
duration2[x] = duration2[x].substring(0, 2);
stringBuilder.append(duration2[x].substring(0, 2)).append((","));
Log.v("CatalogActivity", duration2[x] + " rows deleted from prescription database");
}
}
Log.v("CatalogActivity", stringBuilder.toString());
答案 1 :(得分:1)
您可以执行以下操作:String recompined = TextUtils.join(",", duration2);
将,
更改为所需的分度数。