翻譯|使用教程|編輯:楊鵬連|2021-06-07 09:30:14.350|閱讀 231 次
概述:你知道不同的國(guó)家有不同的日期格式嗎?當(dāng)您制作多語(yǔ)言報(bào)告或針對(duì)他們說波斯語(yǔ)(波斯語(yǔ))的國(guó)家/地區(qū)進(jìn)行報(bào)告時(shí),以正確的格式顯示日期很重要。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
FastReport .Net是適用于Windows Forms,ASP.NET,MVC和.NET Core的全功能解決方案。它可以在Microsoft Visual Studio 2005-2019中使用。支持.Net Framework 2.0-4.x,.NET Core 3.0及以上版本。
在FastReport .NET 2021.3的新版本在演示應(yīng)用程序中實(shí)現(xiàn)了HiDPI支持。添加了用于嵌入Blazor Server應(yīng)用程序的Razor組件。XODT和XODS有新的出口。FastReport OpenSource版本現(xiàn)在可以導(dǎo)入DevExpress,List和Label以及SQL Server Reporting Services報(bào)表。(點(diǎn)擊下方按鈕下載)
立即點(diǎn)擊下載FastReport.NET v2021.3最新版
Fastreport.NET在線購(gòu)買價(jià)優(yōu)惠,專享85折起!趕緊加入購(gòu)物清單吧!
你知道不同的國(guó)家有不同的日期格式嗎?當(dāng)您制作多語(yǔ)言報(bào)告或針對(duì)他們說波斯語(yǔ)(波斯語(yǔ))的國(guó)家/地區(qū)進(jìn)行報(bào)告時(shí),以正確的格式顯示日期很重要。默認(rèn)情況下,F(xiàn)astReport 使用歐洲日期格式,但 .NET 工具允許將其轉(zhuǎn)換為不同的格式。
因此,我們的任務(wù)是將日期轉(zhuǎn)換為波斯格式。例如,我們的報(bào)告有一個(gè)表達(dá)式 [Date],表示今天的日期:
表達(dá)式[Date]以DateTime格式獲取當(dāng)前系統(tǒng)日期,但所有處理后的文本報(bào)告的值是String。讓我們?cè)趫?bào)告腳本中創(chuàng)建一個(gè)新函數(shù):
private void ConvertToPersianDate(object sender, EventArgs e)我們將從文本對(duì)象中喚起這個(gè)功能。我們創(chuàng)建一個(gè)臨時(shí)變量,它將對(duì)象的文本轉(zhuǎn)換為 DateTime:
DateTime d = DateTime.Parse((sender as TextObject).Text);“sender as TextObject”是調(diào)用函數(shù)的對(duì)象的地址。如果我們以這種方式處理它,我們就可以使用它的功能和屬性。
之后,我們將需要 PersianCalendar 對(duì)象,它將日期轉(zhuǎn)換為波斯語(yǔ)格式:
PersianCalendar pc = new PersianCalendar ( ) ;
請(qǐng)注意,此對(duì)象存儲(chǔ)在 System.Globalization 庫(kù)中,并且必須在“使用”部分中指明。
然后我們必須更改對(duì)象的文本。更詳細(xì)地考慮這一行:
(sender as TextObject).Text = string.Format("{0}/{1}/{2}", pc.GetYear(d), pc.GetMonth(d), pc.GetDayOfMonth(d));
在這里我們?cè)O(shè)置對(duì)象的文本。該值的格式為年/月/日,因?yàn)槲覀兪褂?PersianCalendar 的函數(shù)來獲取相應(yīng)的值。可以根據(jù)需要編輯設(shè)置文本的代碼部分。例如,day.month.year 格式的日期代碼如下所示:
"{0}.{1}.{2}", pc.GetDayOfMonth(d), pc.GetMonth(d), pc.GetYear(d)
結(jié)果,我們得到以下函數(shù):
using System.Globalization;
namespace FastReport
{
public class ReportScript
{
private void ConvertToPersianDate(object sender, EventArgs e)
{
// Converting to DateTime format
DateTime d = DateTime.Parse((sender as TextObject).Text);
// Creating an object for conversion
PersianCalendar pc = new PersianCalendar();
// Creating a string using PersianCalendar
// It is possible to change the string template
(sender as TextObject).Text = string.Format("{0}/{1}/{2}", pc.GetYear(d), pc.GetMonth(d), pc.GetDayOfMonth(d));
}
}
}
將該函數(shù)添加到相關(guān)對(duì)象的 AfterData 事件中。
現(xiàn)在日期看起來像這樣:
其他與時(shí)間相關(guān)的功能可以參考下表:
GetDayOfWeek(), Day of week
GetMonth(), Month
GetDayOfMonth(), Day of month
GetYear(), Year
GetHour() Hour
GetMinute() Minute
GetSecond() Second
現(xiàn)在您知道如何更改報(bào)告中的日期格式了。本文可能有助于將格式更改為(年、月、日)。這種格式在日本、中國(guó)、朝鮮、韓國(guó)、臺(tái)灣、匈牙利、立陶宛和伊朗使用;此外,它在一些歐洲和亞洲國(guó)家被用作抵押品。
如果您對(duì)FastReport感興趣,歡迎加入FastReport QQ交流群:801349317
還想要更多嗎?可以您點(diǎn)擊閱讀【FastReport的報(bào)表2020最新資源盤點(diǎn)】,查找需要的教程資源。讓人興奮的是FastReport的.NET正在慧都網(wǎng)火熱銷售中!低至3701元型態(tài)起!> >查看價(jià)格詳情
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自: