c#如何修改電腦時間日期和格式?利用WindowAPI函數可以做到

來源:互聯網
上載者:User

c#利用WindowAPI函數修改電腦日期時間和格式,程式碼片段如下,有需要的朋友拿去吧。

 代碼如下 複製代碼
Public Class SetComputerDateTime

{

[DllImport("kernel32.dll", EntryPoint = "GetSystemDefaultLCID")]
public static extern int GetSystemDefaultLCID();

[DllImport("kernel32.dll", EntryPoint = "SetLocaleInfoA")]
public static extern int SetLocaleInfo(int Locale, int LCType, string lpLCData);

public const int LOCALE_SLONGDATE = 0x20;
public const int LOCALE_SSHORTDATE = 0x1F;
public const int LOCALE_STIME = 0x1E;

[DllImportAttribute("Kernel32.dll")]
public static extern void SetLocalTime(SystemTime st);

public ushort wYear;

public ushort wMonth;

public ushort wDayOfWeek;
public ushort wDay;
public ushort wHour;
public ushort wMinute;
public ushort wSecond;
public ushort wMilliseconds;

public SetComputerDateTimeFormat()

{

}

public void SetDateTimeFormat()

{

try
{
int x = GetSystemDefaultLCID();
SetLocaleInfo(x, LOCALE_SSHORTDATE, "yyyy/MM/dd"); //短日期格式
SetLocaleInfo(x, LOCALE_SLONGDATE, "yyyy年MM月dd日"); //長日期格式
SetLocaleInfo(x, LOCALE_STIME, "HH:mm:ss tt"); //時間格式
}
catch (Exception ex)

{

Console.WriteLine(ex);
}

}

public void SetDateTime(DateTime dateTime)

{

try
{
SystemTime mySystemTime = new SystemTime();
mySystemTime .wYear = (ushort)systemDateTime.Year;//年
mySystemTime .wMonth = (ushort)systemDateTime.Month;//月
mySystemTime .wDay = (ushort)systemDateTime.Day;//日
mySystemTime .wHour = (ushort)systemDateTime.Hour;//時
mySystemTime .wMinute = (ushort)systemDateTime.Minute;//分
mySystemTime .wSecond = (ushort)systemDateTime.Second;//秒
SetLocalTime(mySystemTime );
}
catch (Exception ex)
{
Console.WriteLine(ex);
}

}

}

[StructLayoutAttribute(LayoutKind.Sequential)]
public class SystemTime
{
public ushort wYear;
public ushort wMonth;
public ushort wDayOfWeek;
public ushort wDay;
public ushort wHour;
public ushort wMinute;
public ushort wSecond;
public ushort wMilliseconds;
}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.