split切割.号的字符串

excel中的日期为下图所示,利用io读取到后,调试发现值为“12.10.2019”,需要将其转换为“2019-10-12”

 

用split方法以.号切割时,需要用转移字符“\\.”,代码如下

 1 package com.alphajuns.test;
 2 
 3 import org.junit.Test;
 4 
 5 /**
 6  * @ClassName SplitMethodTest
 7  * @Description
 8  * @Author AlphaJunS
 9  * @Date 2019/10/31 21:49
10  * @Version V1.0
11  **/
12 public class SplitMethodTest {
13 
14     @Test
15     public void test() {
16         // excel中日期为2019/10/12,利用io流读入获取为"12.10.2019"
17         String str = "12.10.2019";
18         System.out.println("转换前:" + str);
19         // 以.号进行切割,需要使用转译字符
20         String[] strArray = split(str);
21         String[] strArr = arrayReverse(strArray);
22         String dateStr = convertStrArrayToDateStr(strArr);
23         System.out.println("转换后的日期字符串:" + dateStr);
24     }
25 
26     /**
27      * @description 切割字符串
28      * @author AlphaJunS
29      * @date 2019/10/31
30      * @param [str]
31      * @return void
32      */
33     private String[] split(String str) {
34         String[] split = str.split("\\.");
35         return split;
36     }
37 
38     /**
39      * @description 字符串数组倒序
40      * @author AlphaJunS
41      * @date 2019/10/31
42      * @param [strArray]
43      * @return java.lang.String[]
44      */
45     public String[] arrayReverse(String[] strArray) {
46         int length = strArray.length;
47         String temp = "";
48         // 倒序
49         for (int i = 0; i < length/2; i++) {
50             temp = strArray[i];
51             strArray[i] = strArray[length - 1 - i];
52             strArray[length - 1 - i] = temp;
53         }
54         return strArray;
55     }
56 
57     /**
58      * @description 字符串数组转日期字符串
59      * @author AlphaJunS
60      * @date 2019/10/31
61      * @param [strArr]
62      * @return java.lang.String
63      */
64     private String convertStrArrayToDateStr(String[] strArr) {
65         String dateStr = "";
66         int length = strArr.length;
67         for (int i = 0; i < length; i++) {
68             if (i != (length - 1)) {
69                 dateStr += strArr[i] + "-";
70             } else {
71                 dateStr += strArr[i];
72             }
73         }
74         return dateStr;
75     }
76 }

结果如下:

 

 若还要将字符串日期转换为日期,可用如下代码:

        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        try {
            Date date = sdf.parse(dateStr);
            System.out.println("日期:" + date);
        } catch (ParseException e) {
            e.printStackTrace();
        }   

 

posted @ 2019-10-31 22:55  AlphaJunS  阅读(757)  评论(0编辑  收藏  举报