現在、文字列が日付に変更されるいくつかの異なる形式のいずれかになっているかどうかを確認するための検証メソッドをJavaで作成しています。文字列がJavaで正しい形式である場合に文字列を検証する方法
受け入れるフォーマットは、MM/DD/YY、M/DD/YY、MM/D/YY、M/D/YYです。
私は最初のフォーマットをテストしていましたが、有効な日付に入力しても有効ではないと私が言っているたびにテストしていました。私はまだ最後の形式の場合の条件に置く必要がある
public class IsDateFormatValid
{
public boolean isValid(String date)
{
boolean result = true;
if(date.length()>8||date.length()<6)
{
result= false;
}
if(date.length()==8)
{
if((Character.toString(date.charAt(2))!= "/")||(Character.toString(date.charAt(5))!="/"))
{
result=false;
}
}
if(date.length()==7)
{
if((Character.toString(date.charAt(2))!="/"&&Character.toString(date.charAt(1))!="/") ||(Character.toString(date.charAt(3))!="/"&&Character.toString(date.charAt(4))!= "/"))
{
result=false;
}
}
return result;
}
}
:ここ
は次のように私の現在のコードが見えるものです。私はデバッグメソッドを行い、常にfalseを返す部分が次のような行であることを確認しました。if((Character.toString(date.charAt(2))!= "/")||(Character.toString(date.charAt) (5))!= "/"))
この質問の主なポイントは、ここでの他の質問がどのように尋ねるかについて単数ではなく、複数の形式に対してチェックしようとしています。
これらの質問は、私は怒っていると非常に悲しいことができます。それが日付であれば日付でなければなりません。日付でない場合は 'null 'にする必要があります。 –
幸運にも1/2/06の意味を推測します。 :) – Eiko