日付として値が存在するか判定したい

いつもお世話になっております。

string型の変数『日付』に『令和03/03/03』という形式で日付が入っています。

メソッドを呼び出しで
ターゲットタイプをsystem.datetime
ターゲットオプジェクトは空
メソッドネームにtryparse
右側のプロパティのパラメータに
入力 string 日付
出力 datetime date日付
※ date日付はdate型変数です

その後条件分岐で
Boolean型変数『判定』を書いているのですがフォルスにいきます。

令和03/03/03はdatetime型に直せないのでしょうか?

よろしくお願いいたします

こんにちは。

和暦表示の日付はそのままだとDateTime型に変換できません。
CultureInfo、JapaneseCalendarを使用し、フォーマットを指定する必要があります。

1 Like

回答ありがとうございます。

CultureInfo、JapaneseCalendarを使用するとしたらメソッドネームかな?と思い、

tryparse.new cultureinfo(“ja-JP”)
と書いてみたのですが、エラー(青いビックリマーク)が出ます。

どの箇所をどのように書いたらよいか教えていただけるとありがたいです。

よろしくお願いいたします。

和暦は説明も実装も面倒くさいんや・・・(苦笑)
こんな感じになりますが、ちょっと読んでみてもらえます?

Main.xaml (7.4 キロバイト)

2 Likes

時間が空いてしまいました、、

まず、CultureInfo型のクラス(変数)を作成し、
クラスのプロパティ"DateTimeFormat.Clendar"にJapaneseCalendarを設定します。
そして、メソッドを呼び出しのパラメータで書式の設定、上記で作成したCultureInfoを設定します。
(メソッドはフォーマット指定が可能な"TryParseExact"に変更します)

と、ここまで説明しましたが、コードを見た方が分かりやすいと思うので
サンプルを作成しました。ご確認ください。

sample.zip (2.6 KB)

1 Like

お返事が遅くなり申し訳ありません。

今の環境ではスマホ以外ネットにつながるものがないため、明日教えていただいた通り書いてみたいと思います。

詳しい回答をありがとうございました。

昨日教えていただいた通りに書いてみたのですが、(hoshino1kさんの分で試しています)

DatetimeにはInvokeMethodメソッドを呼び出しに指定されたパラメータ型、ジェネリック型引数およびジェネリック型制約と一致するTryParseExactという名前のパブリックstaticメソッドがあります。
というエラーがでます。

どこを直したらよいか教えていただけるとありがたいです。
よろしくお願いいたします。

パラメータのデータ型がsampleと同じかどうか見比べてみてください。
順番も揃える必要があります。
(順番はパラメータウィンドウの右上のボタンから並び替えできます)

また、メソッド名のスペルミスでも同様のエラーが発生します。

宜しくお願いします。

回答ありがとうございます。

パラメータ内の順番が違っており、修正したところ上手くいきました。

大変ありがとうございました。

2 Likes

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.