0

私の問題は、split( ); を実行したときに配列ms[ ]が値を取得しないことです。なぜこうなった ?

public class Test {

    public static void main(String[] args) {
        Date date = new Date();
        SimpleDateFormat ft = new SimpleDateFormat("yyyy.MM.dd.HH.mm.ss.");    //change format          
        String msgTime = ft.format(date);
        System.out.println(msgTime);

        String ms[] = msgTime.split(".");
        System.out.println(ms.length);
    }
} 
4

2 に答える 2

1

問題は、split() 関数が、単純な文字列ではなく、正規表現を引数として取ることです。と "。" 正規表現は「任意の記号」を意味します。だから、あなたはそれをエスケープする必要があります。

String ms[] = msgTime.split("\\.");

于 2013-04-05T17:55:46.463 に答える
0

私はあなたがするつもりだったと思います

String ms[] = msgTime.split("\\.");

String.split()は正規表現を取るため、. などの特殊文字をエスケープする必要があります.

于 2013-04-05T17:54:54.473 に答える