喫茶XRAYトップページ

[スレッド全体
]

[11368] Re3:備忘録返信 削除
2017/9/15 (金) 11:21:54 Mr.XRAY
>A〜Zの英字で、年月が取得できるか取得したりして、対応表を作るとか?

ちょっと調べてみました.英語表記はロケールの変更しないと無理がありそです.

[164][06_ロケールの日付の書式を和暦に変更]
http://mrxray.on.coocan.jp/Delphi/plSamples/164_DatePickerComponent.htm#06

こんなことするぐらいならレジストリの操作の方がよさそうな.ハハハッ.
年月の方は,以下のようにフォーマットでは取得できるので,みたら,
 SysUtils の DateTimeToString で処理しているようなので,何かヒントになる
コードがあるかな ? と思ったんですが,コード読むのが面倒....
で,あきらめました (^^;

//=============================================================================
//  動作確認 Windows 7 U64(SP1) + Delphi XE(UP1) Pro
//
//  レジストリの値は以下
//  2019 10 10  神武_神_Jimmu_J
//=============================================================================
procedure TForm1.Button1Click(Sender: TObject);
var
  LDateTime1 : TDateTime;
  LDateTime2 : TDateTime;
  LDateText  : string;
begin
  LDateTime1 := VarToDateTime('2019/10/09');
  LDateTime2 := VarToDateTime('2019/10/10');

  LDateText := FormatDateTime('ggee年mm月dd日', LDateTime1) + sLineBreak
             + FormatDateTime('ggee年mm月dd日', LDateTime2);

  MessageBox(Handle, PChar(LDateText), '結果', MB_ICONINFORMATION);
end;




[11369] Re4:備忘録返信 削除
2017/9/15 (金) 14:20:25 Mr.XRAY
> コードがあるかな ? と思ったんですが,コード読むのが面倒....
> で,あきらめました (^^;


こういう姿勢は大事です.
山の世界ではこれを「勇気ある撤退」と言います.ホホホッ.


[11370] Re4:備忘録返信 削除
2017/9/15 (金) 18:39:53 おかぽん
▼ Mr.XRAYさん
>A〜Zの英字で、年月が取得できるか取得したりして、対応表を作るとか?
これをやってみようかと思い、レジストリに以下を書き込み

> //=============================================================================
> //  レジストリの値は以下
> //  2019 10 10  神武_神_Jimmu_J
> //=============================================================================


このとき、VarToDateTime('J1/12/31') は、例外発生。
VarToDateTime('H1/12/31') は、"平成1年12月31日" の 日付が返りました。

いきなり躓いて、やる気がなくなりました(Delphi5)。
7,Turbo,XE3 があるので、順番に試してみたいとこですが、今日はここまで。




[11371] Re5:備忘録返信 削除
2017/9/15 (金) 22:50:44 taka
▼ おかぽんさん
> このとき、VarToDateTime('J1/12/31') は、例外発生。
> いきなり躓いて、やる気がなくなりました(Delphi5)。


この内容はあなたの最初のリンク先に記述されているようですが・・・。
>元号が改正された場合の西暦と和暦の相互変換について [JAPAN]
>https://community.embarcadero.com/blogs/entry/year-convert-between-gregorian-and-japanese-new-era
>>なお、VarToDateTime で和暦→西暦変換を実装すれば...


Variants.VarToDateTime

Variants.VarToDateAsString(V);

VarUtils.VarDateFromStr

Error

VarDateFromStrの結果が犯人です

VarDateFromStrでgoogle検索

oleaut32.dllが犯人だという投稿を発見

VarToDateTimeを使いたいのでしたら
改元発表後のマイクロソフトのWindows Update待ちでしょうね


[11374] Re6:備忘録返信 削除
2017/9/18 (月) 20:20:27 おかぽん
▼ takaさん
> この内容はあなたの最初のリンク先に記述されているようですが・・・。
> >元号が改正された場合の西暦と和暦の相互変換について [JAPAN]
> >https://community.embarcadero.com/blogs/entry/year-convert-between-gregorian-and-japanese-new-era
> >>なお、VarToDateTime で和暦→西暦変換を実装すれば...

あぁ・・・すみません。
本当ですね。

試行錯誤しているうちに、そんなことも忘れ去っていたいたようです。
なんのための備忘録なのやら(;´Д`)


> oleaut32.dllが犯人だという投稿を発見
これですね、
https://twitter.com/lynatan/status/819202543460855809


[▼次のスレッド]
INCM/CMT
Cyclamen v3.82