アカウント名:
パスワード:
日付の比較で数字を数値に変換して判定してるんですね。意外。 てっきり日付型に変換して比較してるかと思ってました。
ところで、桁に意味を持たせたコードって一般的だと思うんだけど、それを数値に単純に数値として扱うのって一般的なのでしょうか。 仕事で業務システム間で連携するデータをEUCでやれという状況になってて、Access+VBAでプログラムを作ってます。 データ交換の資料がCSVの項目しか無かったりで、メーカーのSEと相談することが多いけど、自社製品でユーザーIDは8桁の数字としていて、各桁に意味を持たせたりしてるのに、交換用データにする時は数値として扱うのが普通みたいで驚いてます。
各桁に意味を持たせたn桁の数字をIDとしたときに、CSVとして扱う過程で数値に変換されてバグるとか、まれによくあるやつですね。「12345678」を数値に直しても「123456789」のままだけど、「00001234」を数値に直すと「1234」になるので齟齬が生じるという。若いIDでテストしないと気付かないでスルーされちゃう。
> まれによくあるやつですね。
さすがに桁数が増えるのはないかなぁ。
たまにあるんやない? 昭和99年→昭和100年とか。
#4179180の話でしょ。
つバージョン番号
あるよ。CVEのシリアル番号。シリアル番号は4桁の0001から始まるが、CVE-YYYY-9999の次は、10000と5桁になる。
CSVとして扱う過程で数値に変換されてバグる
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
アレゲは一日にしてならず -- アレゲ見習い
数字と数値 (スコア:1)
日付の比較で数字を数値に変換して判定してるんですね。意外。
てっきり日付型に変換して比較してるかと思ってました。
ところで、桁に意味を持たせたコードって一般的だと思うんだけど、それを数値に単純に数値として扱うのって一般的なのでしょうか。
仕事で業務システム間で連携するデータをEUCでやれという状況になってて、Access+VBAでプログラムを作ってます。
データ交換の資料がCSVの項目しか無かったりで、メーカーのSEと相談することが多いけど、自社製品でユーザーIDは8桁の数字としていて、各桁に意味を持たせたりしてるのに、交換用データにする時は数値として扱うのが普通みたいで驚いてます。
Re:数字と数値 (スコア:0)
各桁に意味を持たせたn桁の数字をIDとしたときに、CSVとして扱う過程で数値に変換されてバグるとか、まれによくあるやつですね。
「12345678」を数値に直しても「123456789」のままだけど、「00001234」を数値に直すと「1234」になるので齟齬が生じるという。
若いIDでテストしないと気付かないでスルーされちゃう。
Re:数字と数値 (スコア:4, おもしろおかしい)
ちょっと待て
Re: (スコア:0)
> まれによくあるやつですね。
さすがに桁数が増えるのはないかなぁ。
Re: (スコア:0)
たまにあるんやない? 昭和99年→昭和100年とか。
Re: (スコア:0)
#4179180の話でしょ。
Re: (スコア:0)
つバージョン番号
Re: (スコア:0)
あるよ。CVEのシリアル番号。
シリアル番号は4桁の0001から始まるが、
CVE-YYYY-9999の次は、10000と5桁になる。
Re: (スコア:0)
CSVとして扱う過程で数値に変換されてバグる