مقاله : تبدیل تاریخ از میلادی به شمسی

Iauksh
سلام به همگی

من کد مربوط به تبدیل تاریخ از میلادی به شمسی رو با vb.net یا c# می خوام اگه کسی داره ممنون می شم برام بفرستینش.

با تشکر
امید

Iauksh

Iauksh
سلام

اگه برام ارسالش کنید ممنون می شم.email من izadkhasti_omid@yahoo.com .

ممنون از ککمکتون

امید

Iauksh
سلام
تو قسمت دانلود همین سایت یه ocx برای این کار هست از اون هم میتونی استفاده کنی

Iauksh
using System;


namespace vahid
{
/// <summary>
/// clsPesianDate.
/// Converted to VC# by : Vahid_Nasiri@Yahoo.Com
/// </summary>
public class clsPersianDate
{


public clsPersianDate()
{
//
// TODO: Add constructor logic here (chi! bih!)
//
}


/// <summary>
/// GetShamsiDate.
/// Its name is so clear!
/// </summary>
public string GetSystemShamsiDate()
{

int Year = System.DateTime.Now.Year;
int Month = System.DateTime.Now.Month;
int Day = System.DateTime.Now.Day ;
return GetShamsiDate(Year, Month, Day);

}


/// <summary>
/// GetShamsiDate.
/// Converts the specified date to shamsi.
/// </summary>
public string GetShamsiDate(int Year,int Month,int Day)
{
int[] A ={0,10, 11, 9, 11, 10, 10, 9, 9, 9, 8, 9, 9};
int[] B ={0,30, 30, 29, 31, 31, 31, 31, 31, 31, 30, 30, 30};

int YY;
int MM;
int DD;
string CHm,CHd ;

// Get current Date values
YY = Year - 621;
if ((Year % 4 == 0) && (Month == 3) && (Day < 21))
{
A[3]++;
B[3]++;
}
MM = Month + 9;
DD = Day + A[Month];
if (DD > B[Month])
{
DD -= B[Month];
MM++;
}
if (MM > 12)
MM -= 12;

if (MM == 10 && DD > 10)
YY--;

if (MM == 11 || MM == 12)
YY--;

if (MM<10)
CHm = "0" + MM.ToString() ;
else
CHm = MM.ToString() ;

if (DD<10)
CHd = "0" + DD.ToString() ;
else
CHd = DD.ToString() ;

return YY.ToString() + '/' + CHm + '/' + CHd;
}

public string systemDayOfWeek()
{
string res="";

switch( System.DateTime.Now.DayOfWeek.ToString() )
{
case "Saturday" :
res = "شنبه";
break;

case "Sunday" :
res = "یک شنبه" ;
break;

case "Monday":
res = "دوشنبه";
break;

case "Tuesday":
res = "سه شنبه";
break;

case "Wednesday":
res = "چهار شنبه";
break;

case "Thursday":
res = "پنج شنبه";
break;

case "Friday":
res = "جمعه" ;
break;
}

return res ;

}

public string systemShamsiDatTime()
{

return
GetSystemShamsiDate() + " اکنون " +"\n"+
System.DateTime.Now.ToLongTimeString() +"\n"+
System.DateTime.Now.ToLongDateString() + " " +"\n"+
System.DateTime.Now.DayOfWeek + " "+
systemDayOfWeek() ;
}

}
}

Iauksh
کد وارده را برای 18 دسامبر 2004 وارد کردم اما خروجی اشتباه داد.

با تشکر مجدد

Iauksh

Iauksh

Iauksh
یه نگاه هم به این بنداز :
http://www.barnamenevis.org/forum/viewtopic.php?t=17727&highlight=
نظرتم بگو

Iauksh

Iauksh
سلام.
بوسیله interoperability ها میشود که من بلد نیستم ولی راحت تر این است که خودتان آنرا تبدیل کنید. :oops:

Iauksh
نمیشه DLL کرد

میشه یکی راهنمایی کنه ؟

Iauksh
نمیشه DLL کرد

میشه یکی راهنمایی کنه ؟


1. برای dll کردن یه پروژه class library به برنامه اضافه کن
2. توی refrence برنامه اول اونو اضافه کن
3. حالا هر تابعی رو که می خواهی توی برنامه اصلیت استفاده کنی رو به صورت public معرفی کن

مثال اون هم اینجا گذاشتم
امیدوارم که منظورت همین باشه

موفق باشی :flower:

Iauksh
..::UnicorN::..
جان اگه میشه همون تاریخ رو تو یه صفحه VB.net بزار :mrgreen:

Iauksh
لطفا سری به اینجا بزنید که کارم لنگه

http://www.barnamenevis.org/forum/viewtopic.php?t=2211&start=10

:oops:

Iauksh
ای بابا
یه برنامه online هم هست که کد #C رو تبدیل به vb میکنه!
بابا google هم باهاله ها!
با احترام.