*(これは ISV データベース用なので、リバース エンジニアリングのようなもので、変更できません) ...
C# で次の日付から int (visa/versa) への変換を行うにはどうすればよいですか ...
日付は次のとおりです。
5/17/2012
intに変換されます
77207
データベースで。
最初はこれがユリウス日だと思っていましたが、そうではないようです。Julian Date Questionの方法をいじっていましたが、これは一致しません。
var date = ConvertToJulian(Convert.ToDateTime("5/17/2012"));
Console.WriteLine(date);
public static long ConvertToJulian(DateTime Date)
{
int Month = Date.Month;
int Day = Date.Day;
int Year = Date.Year;
if (Month < 3)
{
Month = Month + 12;
Year = Year - 1;
}
long JulianDay = Day + (153 * Month - 457)
/ 5 + 365 * Year + (Year / 4) -
(Year / 100) + (Year / 400) + 1721119;
return JulianDay;
}
Outputs 2456055 //Should be 77207
私は変換を行うためにこのSQLを使用しています:
SELECT Convert(date, CONVERT(CHAR,DATEADD(D, 77207, '1800-12-28'),101))
そしてそれは正確に見えます。C# でこの変換を行うにはどうすればよいですか? そして、誰かがこれがどの基準に基づいているのか、それとも単にランダムな変換なのかについて教えてもらえますか. 前もって感謝します。