Так что мне нужно собрать данные из моей базы данных, это дата отпуска в моей стране, данные поступают следующим образом.
Example 1 : THU 21 May Ascension Day of Jesus Christ *ICDX GOLD open fo
Example 2 : MON-THU 28-31 Dec Substitute for Commemoration of Idul Fitri Festival
Так что мне нужно получить данные из дат и названия праздника, чтобы получить Данные из примера, я использую код, подобный этому
String ex1= "THU 21 May Ascension Day of Jesus Christ *ICDX GOLD open for"; //i don't need *ICDX so i cut it with trim split
String ex2= "MON-THU 28-31 Dec Substitute for Commemoration of Idul Fitri Festival ";//so i cant cut using substring cause holiday name not fixed length
String curr = ("CURRENCY IDR"); // to display currency code [hardcoded]
String dateno = (ex1.substring(8, 13)); // to take date number by substring
String month = (ex1.substring(14, 17)); // to take month name by substring
String[] splm = dateno.trim().split(" "); // to trim space after date number
String dat = (splm[0]); //date number display
String date= (dat+month+"2020");// display date with year ex1 (21May2020)
SimpleDateFormat sdf=new SimpleDateFormat("ddMMMyyyy"); //SDF to parse my date format
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyyMMdd"); //SDF to new date format
String comment= (ex1.substring(18, 77)); //Display holidays name by substring
String[] spl = comment.trim().split(" ");// Trim comment by spaces, so after 3 spaces its cut, like ex1 i dont need *ICDX
String comm= ("HOLIDAY NAME " +spl[0] +"\r\n"); //Display holiday name
System.out.println(curr); //sysout currency name
Date datef;
try {
datef = sdf.parse(date);
System.out.println("DATE " +sdf1.format(datef)); //sysout formatted date
} catch (ParseException e) {
e.printStackTrace();
};
System.out.println(comm); //sysout holiday name
, и результат получается так:
CURRENCY IDR
DATE 20200521
HOLIDAY NAME Ascension Day of Jesus Christ
Вопрос, если мне нужно сделать это для примера 2 с датой значения 28 От c до 31 * c, и вывод должен быть как в примере 1, и выглядеть так
CURRENCY IDR
DATE 28122020
HOLIDAY NAME Substitute for Commemoration of Idul Fitri Festival
CURRENCY IDR
DATE 29122020
HOLIDAY NAME Substitute for Commemoration of Idul Fitri Festival
CURRENCY IDR
DATE 30122020
HOLIDAY NAME Substitute for Commemoration of Idul Fitri Festival
CURRENCY IDR
DATE 31122020
HOLIDAY NAME Substitute for Commemoration of Idul Fitri Festival
Кто-нибудь имеет представление, какую функцию я должен использовать для отображения такого вывода? я все еще новичок в java, поэтому я приму любой совет, не стесняйтесь комментировать, спасибо